Centos 开发环境搭建


安装JDK

查看jdk安装情况
java -version
查看已安装
rpm -qa | grep java
有则卸载
rpm -e --nodeps java-x.x.x-gcj-compat-x.x.x.x-xxjpp.xxx
rpm -e --nodeps java-x.x.x-openjdk-x.x.x.x-x.x.bxx.exx
安装
tar -zxvf jdk-8u231-linux-x64.tar.gz
mv jdk1.8.0_231 /usr/local/
vim /etc/profile
在文件尾部添加如下配置:
export JAVA_HOME=/usr/local/jdk1.8.0_231/
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

安装redis

下载
wget https://repo.huaweicloud.com/redis/redis-6.0.6.tar.gz
tar -zxvf redis-6.0.6.tar.gz
mv redis-6.0.6 /usr/local/
cd /usr/local/redis-6.0.6
可先执行
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
编译安装
make & make install
修改配置文件
cd /usr/local/redis-6.0.6
修改内容:
daemonize  yes
bind 0.0.0.0 
protected-mode no
stop-writes-on-bgsave-error no
启动服务
cd /usr/local/bin & ./redis-server /usr/local/redis-6.0.6/redis.conf
防火墙设置
firewall-cmd --zone=public --list-ports
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload

rabbitmq安装

安装Erlang,版本选择注意和RabbitMQ版本兼容 https://www.rabbitmq.com/which-erlang.html
    源码编译安装
        安装依赖 yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel ncurses-devel.x86_64 unixODBC-devel
        tar -zxvf otp_src_23.0.tar.gz & mv otp_src_23.0 /usr/local/
        cd /usr/local & mkdir erlang
        配置安装路径 cd /usr/local/otp_src_23.0 & ./configure --prefix=/usr/local/erlang --without-javacmake & make install
        安装 cd /usr/local/otp_src_23.0 & make install
        查看是否安装成功 ll /usr/local/erlang/bin
        (
          如果安装失败,提示wxWidgets不存在的问题,由于erlang依赖wxWidgets,需要先安装wxWidgets
          安装依赖
          yum -y install gtk2-devel binutils-devel
          下载(可以用https://gh.api.99988866.xyz/加速下载)
          wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.3/wxWidgets-3.1.3.tar.bz2
          mkdir -p /usr/local/wxWidgets & tar -xvf wxWidgets-3.1.3.tar.bz2 & cd wxWidgets-3.1.3/
          ./configure --with-regex=builtin --with-gtk --enable-unicode --disable-shared --prefix=/usr/local/wxWidgets & make && make install
          cd /etc/ld.so.conf.d/ & touch wxWidgets.conf
          vim wxWidgets.conf 写入/usr/local/lib
          ldconfig
          vim /etc/profile写入export WXPATH=/usr/local/wxWidgets/
                             export PATH=$WXPATH/bin:$PATH
          source /etc/profile
          wx-config --version
        )
        添加环境变量 echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile
        刷新环境变量 source /etc/profile
        验证 erl
安装RabbitMQ
    下载 wget https://repo.huaweicloud.com/rabbitmq-server/v3.8.14/rabbitmq-server-generic-unix-3.8.14.tar.xz
    安装解压工具 yum install -y xz
    解压 /bin/xz -d rabbitmq-server-generic-unix-3.8.14.tar.xz & tar -xvf rabbitmq-server-generic-unix-3.8.14.tar
    移位改名 mv rabbitmq_server-3.8.14/ /usr/local/ & mv rabbitmq_server-3.8.14/ rabbitmq
    配置环境变量 echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile
    刷新环境变量 source /etc/profile
    开启web插件 rabbitmq-plugins enable rabbitmq_management
    防火墙设置
        添加amqp端口 firewall-cmd --zone=public --add-port=5672/tcp --permanent
        添加管理工具端口 firewall-cmd --zone=public --add-port=15672/tcp --permanent
    启动:rabbitmq-server -detached
    停止:rabbitmqctl stop
    状态:rabbitmqctl status
使用
    第一次访问需要登录,默认的账号密码为:guest/guest
    在3.3.1和之后的版本中,出于安全的考虑,guest这个默认的用户只能通过http://localhost:15672 来登录,其他的IP无法直接使用这个账号。 
      可以修改配置文件取消这个限制,现在通过添加新授权用户admin的方式解决,可以通过外网使用这个用户名和密码访问.
        查看所有用户 rabbitmqctl list_users
        添加一个用户 rabbitmqctl add_user admin admin
        配置权限 rabbitmqctl set_permissions -p "/" admin"." "." ".*"
        查看用户权限 rabbitmqctl list_user_permissions admin
        设置tag rabbitmqctl set_user_tags admin administrator
        删除用户(安全起见,删除默认用户) rabbitmqctl delete_user guest
    主页
        connections:无论生产者还是消费者,都需要与RabbitMQ建立连接后才可以完成消息的生产和消费,在这里可以查看连接情况
        channels:通道,建立连接后,会形成通道,消息的投递获取依赖通道。
        Exchanges:交换机,用来实现消息的路由
        Queues:队列,即消息队列,消息存放在队列中,等待消费,消费后被移除队列。
    用户 Users,用户的角色,可选的有以下几个:
        超级管理员(administrator) 可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
        监控者(monitoring) 可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
        策略制定者(policymaker) 可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
        普通管理者(management) 仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
        其他 无法登陆管理控制台,通常就是普通的生产者和消费者。\
    虚拟主机(Virtual Hosts)
        为了让各个用户可以互不干扰的工作,RabbitMQ添加了虚拟主机(Virtual Hosts)的概念。其实就是一个独立的访问路径,不同用户使用不同路径,各自有自己的队列、交换机,互相不会影响。
        创建好虚拟主机,我们还要给用户添加访问权限,点击添加好的虚拟主机,进入虚拟主机设置界面设置。

安装MySQL

# 下载
wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm
# 安装,执行完会在 /etc/yum.repos.d/ 目录下生成两个文件:mysql-community.repo mysql-community-source.repo
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
yum install mysql-server -y
mysql安装完在启动前修改/etc/my.cnf文件,添加配置:lower_case_table_names=1,或者执行mysqld --initialize --user=mysql --lower-case-table-names=1
# 服务启动
systemctl start mysqld.service
# 启动状态查看
systemctl status mysqld.service
# 加入开机启动
systemctl enable mysqld.service
# 停止服务
systemctl stop mysqld.service
# 服务重启
systemctl restart mysqld.service
# 修改防火墙
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
# 找初始密码
grep "password" /var/log/mysqld.log
# 重置密码
mysqladmin -uroot -p password  新密码
回车输入初始密码来重置密码

修改密码命令
ALTER user 'root'@'localhost' IDENTIFIED BY 'root';--修改密码为root

安装nodejs

下载
wget https://repo.huaweicloud.com/nodejs/v10.16.3/node-v10.16.3-linux-x64.tar.gz
解压
tar -zxvf node-v10.16.3-linux-x64.tar.gz
移动
mv node-v10.16.3-linux-x64 /usr/local/
cd /usr/local
mv node-v10.16.3-linux-x64 nodejs
设置环境变量
vim /etc/profile
// 在最下面添加 nodejs 的 bin 目录
export PATH=$PATH:/usr/local/nodejs/bin
// 保存退出编辑器,刷新环境变量
source /etc/profile
配置npm
// 跳转路径到安装位置
cd /usr/local/nodejs
// 新建全局安装文件夹
mkdir node_global
// 新建缓存文件夹
mkdir node_cache
// 设置全局安装路径
npm config set prefix "node_global"
// 设置缓存位置
npm config set cache "node_cache"
// 检查是否设置成功
npm config list --json
// 不要忘记需要去环境变量里配置全局安装的bin文件夹
vim /etc/profile
// 添加环境变量
export PATH=$PATH:/usr/local/nodejs/node_global/bin
// 刷新环境变量
source /etc/profile
检查
node -v
npm -v