ToB企服应用市场:ToB评测及商务社交产业平台

标题: Centos 7.x & 8.x软件部署 [打印本页]

作者: 缠丝猫    时间: 2024-9-9 23:12
标题: Centos 7.x & 8.x软件部署
之前记录整理的安装条记

  
Centos 7.x & 8.x

1. 通用设置

1.1 换源

阿里云源,镜像文件位置:/etc/yum.repos.d/CentOS-Base.repo
1.1.1 备份
  1. $ cd /etc/yum.repos.d/
  2. $ cp CentOS-Base.repo CentOS-Base.repo.back
  3. $ rm CentOS-Base.repo
复制代码
1.1.2 各版本源地点(CentOS-Base.repo背面有空格)
Centos 5
  1. $ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
复制代码
Centos 6
  1. $ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
复制代码
CentOS 7
  1. $ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
复制代码
CentOS 8
  1. $ wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
复制代码
1.1.3 并更换部分字段(非阿里云机器需要做)
  1. $ sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
复制代码
1.1.4 本地DVD源(可选)
  1. # 更改CentOS-Media.repo使其为不生效:
  2. $ vim /etc/yum.repos.d/CentOS-Media.repo
  3. 修改:enabled=0
  4. 注:将CentOS-Media.repo 文件的enabled=0 改成 enabled=1 ,需要删除或用#屏蔽file:///media/cdrom/和file:///media/cdrecorder/这两行,
  5. 如果不删除或屏蔽,生成源缓存时会因为找不到对应的文件而报错(未测试)
复制代码
1.1.5 更新元数据缓存
  1. $ yum clean all && yum makecache
复制代码
1.1.6 更新
  1. $ yum update -y
复制代码
1.2 终端快捷键设置

设置>>装备>>键盘(Keyboard)>>右侧列表拉到底,然后点+
名称:随便填写
命令:/usr/bin/gnome-terminal
快捷键:点击一下Set Shortcut,然后在键盘上按下想要的快捷键
1.3 Win32DiskImager恢复

windows环境:win+R,实行以下命令
  1. diskpart
复制代码
格式化U盘
  1. > list disk
  2. > select disk 1
  3. > clean
  4. > create partition primary
  5. > active
  6. > format fs=fat32 quick
复制代码
1.4 命令

查察隐藏文件夹
  1. $ ll -a
  2. $ ls -a
复制代码
打包压缩
  1. $ tar -czvf nginx-rtmp-module.tar.gz nginx-rtmp-module/
  2. # -czvf :
  3.         c 创建  
  4.         z gzip压缩格式
  5.         v 可视
  6.         f 文件名
复制代码
1.5 软碟通制作的U盘安装系统

因为windows卷标长度的限制,软碟通制作的U盘启动盘安装时需要手动指定引导磁盘位置。
开机从U盘启动到centos安装选项时,选择第一个选项(Install Centos 7),安装Tab键:
   vmlinuz initrd=initrd.img inst.stage2=hdABEL=CentOS\x207\x2086_64 quiet
  修改CentOS\x207\x2086_64为CentOS\x207\x208,回车开始安装即可
注:如果不清楚挂在卷标名称,修改CentOS\x207\x2086_64为linux dd,回车,查察挂在磁盘。
1.6 卸载软件

参考 openJDK卸载
  1. sudo rpm -e  -- 包名 # 普通删除模式
  2. sudo rpm -e --nodeps 包名 #强力删除模式,如果用上面命令删除时,提示有依赖的其他文件,则用该命令可以对其进行强力删除
复制代码
1.7 长途桌面

前提:
安装GNOME桌面,已有忽略
  1. yum -y groups install "GNOME Desktop"
  2. startx
复制代码
安装xvnc
方式一
  1. $ yum install  epel* -y
  2. $ yum --enablerepo=epel -y install xrdp
复制代码
方式二
1)安装xrdp
资源网站:http://mirrors.ustc.edu.cn/fedora/epel/7,到对应的目次,查找以epel-release-开头的RPM包
  1. $ wget http://mirrors.ustc.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
  2. $ rpm -Uvh epel-release-7-11.noarch.rpm
  3. $ yum install xrdp
复制代码
2)安装 tigervnc
  1. $ yum install tigervnc tigervnc-server
复制代码
3)配置SELinux , 否则可能无法启动xrdp服务,或者启动出错
  1. $ chcon -t bin_t /usr/sbin/xrdp
  2. $ chcon -t bin_t /usr/sbin/xrdp-sesman
复制代码
启动xrdp,设置开机自启
  1. $ systemctl start xrdp
  2. $ systemctl enable xrdp
复制代码
防火墙
  1. //开放3389端口
  2. firewall-cmd --permanent --zone=public --add-port=3389/tcp
  3. firewall-cmd --reload
复制代码
1.8 端口占用

  1. $ netstat -lntp
复制代码
1.9 网卡配置(centos 7.8)

配置文件路径
  1. /etc/sysconfig/network-scripts/ifcfg-enpXs0
  2. #enpXs0中的X为网卡编号
复制代码
网卡配置(注意网卡名称,NAME、DEVICE)
  1. TYPE=Ethernet
  2. PROXY_METHOD=none
  3. BROWSER_ONLY=no
  4. BOOTPROTO=none
  5. DEFROUTE=yes
  6. IPV4_FAILURE_FATAL=no
  7. IPV6INIT=yes
  8. IPV6_AUTOCONF=yes
  9. IPV6_DEFROUTE=yes
  10. IPV6_FAILURE_FATAL=no
  11. IPV6_ADDR_GEN_MODE=stable-privacy
  12. NAME=enp1s0
  13. UUID=ca078e65-1a78-4a66-89cc-84884f6bbf20
  14. DEVICE=enp1s0
  15. ONBOOT=yes
  16. BROADCAST=192.168.3.255
  17. DNS=61.139.2.69
  18. DNS1=61.139.2.69
  19. IPADDR=192.168.3.108
  20. PREFIX=24
  21. GATEWAY=192.168.3.1
复制代码
1.10 更改文件归属

更改文件夹或者文件的所属用户
  1. chown -R behome /data
  2. chown username filename
复制代码
更改文件夹或者文件的所属用户组
  1. chgrp -R behome /data
  2. chgrp username dirname
复制代码
2. 防火墙

2.1 systemctl命令

查察状态
  1. $ systemctl status firewalld.service
复制代码
开启防火墙
  1. $ systemctl start firewalld.service
复制代码
关闭防火墙
  1. $ systemctl stop firewalld.service
复制代码
开机启动防火墙
  1. $ systemctl enable firewalld.service
复制代码
禁止防火墙开机启动
  1. $ systemctl disable firewalld.service
复制代码
2.2 firewall命令

查察防火墙状态
  1. $ firewall-cmd --state
复制代码
查察防火墙所有开放的端口
  1. # 只能查看到通过 firewall-cmd 命令开放的端口
  2. $ firewall-cmd --zone=public --list-ports
复制代码
开放端口
  1. $ firewall-cmd --zone=public --add-port=5672/tcp --permanent
复制代码
关闭端口
  1. $ firewall-cmd --zone=public --remove-port=5672/tcp --permanent
复制代码
配置立刻生效
  1. $ firewall-cmd --reload
复制代码
3. 端口操纵命令

查察端口占用
  1. $ lsof -i:22
  2. $ netstat -lnpt
  3. |grep 22
复制代码
查察监听端口
  1. $ netstat -lnpt
复制代码
4. gcc & make

  1. $ yum -y install gcc gcc-c++ automake autoconf libtool make
  2. # 版本号查询
  3. $ gcc --version
复制代码
5. 安装openssh(命令行登录)

安装
  1. $ yum install openssh*
复制代码
开机自启
  1. $ systemctl enable sshd
复制代码
启动服务
  1. $ systemctl start sshd 或者 service sshd start
复制代码
版本号
  1. $ ssh -V
复制代码
注:如果防火墙没有关闭,需要开放22端口
扩展:查察 openssl 版本命令 ==> openssl version
6. 开机自启

6.1 方式一(rc.local)

6.1.1 启用rc.local服务

修改权限
  1. $ chmod a+x /etc/rc.d/rc.local
  2. 注:centos7及以后需要添加权限,/etc/rc.local是/etc/rc.d/rc.local的符号链接
复制代码
配置rc.local服务,增加Install模块
  1. $ vim /usr/lib/systemd/system/rc-local.service
复制代码
  1. [Unit]
  2. Description=/etc/rc.d/rc.local Compatibility
  3. #Documentation=man:systemd-rc-local-generator(8)
  4. ConditionFileIsExecutable=/etc/rc.d/rc.local
  5. After=network.target
  6. [Service]
  7. Type=forking
  8. ExecStart=/etc/rc.d/rc.local start
  9. TimeoutSec=0
  10. RemainAfterExit=yes
  11. #GuessMainPID=no
  12. # 下面的 Install 必须有
  13. [Install]
  14. WantedBy=multi-user.target
复制代码
启用rc.local脚本
  1. $ systemctl enable rc-local
复制代码
测试启动
  1. $ systemctl daemon-reload
  2. $ systemctl start rc-local
复制代码
6.1.2 添加自定义脚本

添加脚本可实行权限(/opt/script/StartTomcat.sh是你的脚本路径)
  1. $ chmod a+x /opt/script/StartTomcat.sh
复制代码
修改/etc/rc.d/rc.local文件
  1. $ vim /etc/rc.d/rc.local
  2. # 在末尾增加如下内容(2选1)
  3. 1. echo "/opt/script/StartTomcat.sh" >> /etc/rc.d/rc.local
  4. 2. /opt/script/StartTomcat.sh
复制代码
注意:如果使用看门狗
6.2 方式二(chkconfig)

将脚本移动到/etc/rc.d/init.d目次下
  1. $ mv /opt/script/StartTomcat.sh /etc/rc.d/init.d
复制代码
增加脚本的可实行权限
  1. $ chmod +x  /etc/rc.d/init.d/StartTomcat.sh
复制代码
添加脚本到开机自动启动项目中
  1. $ cd /etc/rc.d/init.d
  2. $ chkconfig --add StartTomcat.sh
  3. $ chkconfig StartTomcat.sh on
复制代码
移除开机自启
  1. $ chkconfig --del StartTomcat.sh
复制代码
6.3 看门狗

脚本:创建xx.sh文件,写入以下内容
  1. #!/bin/sh
  2. #mleaf90@gmail.com
  3. while [ 1 ]
  4. do
  5.         JAVA=`ps aux | grep "java -jar /home/behome/java/monitoring-1.0.jar" | grep -v grep |grep -v watchdog |grep -v drop_caches | wc -l`
  6.         if [ "$JAVA" = "0" ];then
  7.                         echo $JAVA
  8.                         java -jar /home/behome/java/monitoring-1.0.jar >/dev/null 2>&1 &
  9.         elif [ $JAVA -gt 1 ];then #if > 1
  10.         echo java is runing
  11.                         echo $JAVA
  12.                         killall java
  13.                         java -jar /home/behome/java/monitoring-1.0.jar >/dev/null 2>&1 &
  14.         fi
  15.        
  16.         sleep 2
  17.         echo $JAVA
  18. done
复制代码
配置rc.local
  1. $ vim /etc/rc.d/rc.local
  2. # 在文件末尾写入以下内容,后面的参数必须写,否则会导致系统无法进入桌面
  3. /xx/xx/xxx.sh >/dev/null 2>&1 &
复制代码
注:JAVA…fi 代码块可写多个,对应的 echo $JAVA 也要写多个
如果使用看门狗无法启动java步伐
  1. 1.修改java程序权限
  2. 2.修改看门狗脚本权限
  3. 3.在/etc/rc.local文件中添加java环境变量(重要),环境变量参考章节8
复制代码
7. Mysql 5.7

下载地点:https://downloads.mysql.com/archives/community/ ,选择Liunx - Generic,上传到/usr/local/目次下
https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
7.1 下载&解压

  1. $ wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
  2. $ tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
  3. $ mv mysql-5.7.29-linux-glibc2.12-x86_64 /usr/local/mysql-5.7.29
复制代码
7.2 安装依赖

  1. $ yum install libncurses*
复制代码
7.3 创建数据和日志文件夹

  1. $ cd /usr/local/mysql-5.7.29/
  2. # 数据
  3. $ mkdir -p data
  4. # 日志
  5. $ mkdir -p log
复制代码
7.4 创建用户和组并赋权限

在 /usr/local/mysql-5.7.29/ 目次下实行
  1. $ groupadd mysql
  2. $ useradd -r -g mysql mysql                # -g:指定用户所属的用户组,-r:建立系统账号
  3. $ chown -R mysql:mysql /usr/local/mysql-5.7.29
复制代码
7.5 添加配置

vim 按 i 进入插入模式,退出命令:插入模式下依次输入: esc ,:wq(生存并退出) / :q!(强制退出)
  1. $ vim /etc/my.cnf
  2. # 写入以下内容,注意路径
  3. [mysqld]
  4. bind-address=0.0.0.0
  5. port=3306
  6. user=mysql
  7. basedir=/usr/local/mysql-5.7.29
  8. datadir=/usr/local/mysql-5.7.29/data
  9. socket=/tmp/mysql.sock
  10. lc_messages_dir = /usr/local/mysql-5.7.29/share/
  11. lc_messages = en_US
  12. # 字符集
  13. character_set_server=utf8mb4
  14. collation-server = utf8mb4_unicode_ci
  15. init_connect='SET NAMES utf8mb4'
  16. symbolic-links=0
  17. explicit_defaults_for_timestamp=true
  18. # 导入包允许的大小设置
  19. max_allowed_packet=1024M
  20. max_connections=1500
  21. # 东八区时区,北京时区
  22. default-time-zone = '+8:00'
  23. sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
  24. # 忽略表名大小写;1表示忽略大小写,0表示解析大小写
  25. lower_case_table_names=1
  26. log-error=/usr/local/mysql-5.7.29/log/err.log
  27. pid-file=/usr/local/mysql-5.7.29/mysql.pid
  28. [mysql]
  29. default-character-set=utf8mb4
  30. [client]
  31. default-character-set=utf8mb4
  32. socket=/tmp/mysql.sock
复制代码
7.6 初始化

初始化
  1. $ /usr/local/mysql-5.7.29/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-5.7.29/ --datadir=/usr/local/mysql-5.7.29/data/ --user=mysql --initialize
复制代码
初始密码
  1. $ cat /usr/local/mysql-5.7.29/log/err.log
  2. # 密码在最后一行
  3. A temporary password is generated for root@localhost: j4O,(gOy_Rj8
复制代码
7.7 命令支持

环境变量(支持使用mysql -u -p命令)
  1. $ vim /etc/profile
  2. # 文件末尾写入
  3. # mysql
  4. PATH=/usr/local/mysql-5.7.29/bin:$PATH
  5. # 刷新环境变量配置
  6. $ source /etc/profile
复制代码
mysqldump 命令
  1. ln -fs /usr/local/mysql-5.7.29/bin/mysqldump /usr/bin
复制代码
7.8 测试:启动/停止/重启

  1. $ cp -a /usr/local/mysql-5.7.29/support-files/mysql.server /etc/init.d/mysql
  2. $ service mysql start         或者  /etc/init.d/mysql start
  3. $ service mysql stop         或者  /etc/init.d/mysql stop
  4. $ service mysql restart
  5.          或者  /etc/init.d/mysql restart
复制代码
7.9 密码修改&长途访问

  1. $ mysql -uroot -p
  2. mysql> alter user user() identified by "新密码";
  3. mysql> use mysql;
  4. mysql> update user set authentication_string=password('新密码') where user='root';
  5. mysql> update user set host='%' where user='root';
  6. mysql> flush privileges;
  7. mysql> exit;
复制代码
开放端口(仅在防火墙开启时配置)
  1. $ firewall-cmd --zone=public --add-port=3306/tcp --permanen
  2. $ firewall-cmd --reload
复制代码
7.10 开机自启

  1. $ cp -a /usr/local/mysql-5.7.29/support-files/mysql.server /etc/rc.d/init.d/mysql
  2. $ vim /etc/rc.d/rc.local
  3. # 末尾添加以下内容
  4.   /etc/rc.d/init.d/mysql start
  5. # 注:/etc/init.d 是指向 /etc/rc.d/init.d 的软链接,如执行过可省
复制代码
7.11 依赖&字符集

7.11.1 依赖报错
  1. $ ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
  2. $ ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
复制代码
7.11.2 字符集查询
查察服务器字符集
  1. mysql> SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';
复制代码
查察表的编码格式
  1. mysql> show create table <表名>;
复制代码
注:数据库&表已创建的可以直接修改数据库或表的编码格式
7.11.3 字符集修改
修改数据库的编码格式
  1. mysql> alter database <数据库名> character set utf8mb4 COLLATE utf8mb4_general_ci;
复制代码
修改数据表格编码格式
  1. mysql> alter table <表名> character set utf8mb4 COLLATE utf8mb4_general_ci;
复制代码
修改字段编码格式
  1. mysql> alter table <表名> change <字段名> <字段名> <类型> character set utf8mb4;
复制代码
更改表字符集和表中所有字段的字符集
  1. mysql> alter table <表名> convert to character set utf8mb4 collate utf8mb4_general_ci;
复制代码
批量更改表字符集和表中所有字段字符集
  1. 1.执行下面的语句:
  2.         SELECT
  3.             CONCAT("ALTER TABLE `", TABLE_NAME,"` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;")
  4.     AS target_tables
  5.     FROM INFORMATION_SCHEMA.TABLES
  6.     WHERE TABLE_SCHEMA="数据库名字,其他地方不改"
  7.     AND TABLE_TYPE="BASE TABLE"
  8.    
  9. 2.将结果集全部复制出来执行
复制代码
7.12 错误解决

7.12.1 mysql.sock报错
修改/etc/my.cnf中 socket 的位置
  1. socket=/usr/local/mysql-5.7.29/mysql.sock
复制代码
7.12.2 libmysqlclient.so.20 依赖缺失
  1. $ ln -s /usr/local/mysql-5.7.29/lib/libmysqlclient.so.20 /usr/lib64/libmysqlclient.so.20
复制代码
7.13 主从同步

前提:
  1.         1.主从服务器网络必须互通,
  2.         2.主库可以先创建好数据库和表,
  3.         <font style="color:red;">3.在配置文件中不可以使用skip-networking(开启该选项后就不能远程访问MySQL)参数选项,否则从服务器将无法与主服务器进行连接并复制数据</font>
复制代码
7.13.1 主服务器配置(master)

修改配置文件
  1. $ vim /etc/my.cnf
  2. # 增加以下配置
  3. [mysqld]
  4. server_id = 1               # 设置服务器编号,所有主从服务器必须唯一
  5. log_bin = master-bin        # 启用二进制日志,并设置二进制日志文件前缀
复制代码
临时关闭selinux,重启系统失效
  1. # 关闭
  2. $ setenforce 0
  3. # 查看selinux的状态
  4. $ getenforce 0
复制代码
重启Mysql 服务
  1. $ service mysql restart
复制代码
创建从库账号
  1. $ mysql -uroot -p
  2. mysql> create user 'slave_cp'@'192.168.3.%' identified by 'SlaveAdmin';
  3. mysql> grant replication slave on *.* to 'slave_cp'@'192.168.3.%';
  4. mysql> exit
复制代码
语句解释:
  1.         <font style="color:#999999;">1.slave_cp账户可以从 192.168.3.% 网段内的任何主机连接主服务器,密码为SlaveAdmin</font>
  2.     <font style="color:#999999;">2.为账号slave_cp赋予数据库复制权限(replication)</font>
复制代码
只读模式
  1. mysql> flush tables with read lock;
复制代码
获取二进制日志信息(后续从服务器配置使用)
  1. mysql> show master status;
  2. +-------------------+----------+--------------+------------------+------------------+
  3. | File              | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set|
  4. +-------------------+----------+--------------+------------------+------------------+
  5. | master-bin.000001 |      615 |              |                  |                   |
  6. +-------------------+----------+--------------+------------------+------------------+
  7. 1 row in set (0.00 sec)
  8. mysql>
复制代码
注:结果会合的 <font style="color:blue;">File</font>和 <font style="color:blue;">osition</font> 后续需要使用
备份数据
  1. $ mysqldump -u root -p --all-databases --lock-all-tables > /tmp/dbdump.sql
复制代码
将备份好的数据库传到MySQL从数据库
  1. $ scp /tmp/dbdump.sql IP地址:/tmp/
  2. 例:scp /tmp/dbdump.sql 192.168.3.109:/tmp/,按照提示操作,会要求输入密码
复制代码
7.13.2 从服务器配置(slave)

修改配置文件
  1. [mysqld]
  2. server_id = 2             # 设置服务器编号,所有主从服务器必须唯一
复制代码
临时关闭selinux,重启系统失效
  1. # 关闭
  2. $ setenforce 0
  3. # 查看selinux的状态
  4. $ getenforce 0
复制代码
重启Mysql服务
  1. $ service mysql restart
复制代码
导入数据
  1. $ mysql -u root -p < /tmp/dbdump.sql
复制代码
配置从服务器毗连主服务器进行数据复制(先登录mysql)
  1. mysql> change master to
  2.     -> master_host='192.168.5.21',
  3.     -> master_user='slave_cp',
  4.     -> master_password='SlaveAdmin',
  5.     -> master_port=3306,
  6.     -> master_log_file='master-bin.000001',
  7.     -> master_log_pos=154;
  8. mysql> start slave;
复制代码
语句解释:
  1.         <font style="color:#999999;">change master to:修改连接信息</font>
  2.         <font style="color:#999999;">master_host:指定主服务器主机名或IP地址</font>
  3.         <font style="color:#999999;">master_user:主服务器上创建的拥有复制权限的账户名称</font>
  4.         <font style="color:#999999;">master_password:master_user账户的密码</font>
  5.         <font style="color:#999999;">master_log_file:指定主服务器二进制日志文件名称(File)</font>
  6.         <font style="color:#999999;">master_log_pos:主服务器二进制日志当前记录的位置(Position)</font>
  7.         <font style="color:#999999;">start slave:开启从服务器功能进行主从连接</font>
复制代码
查察从服务器状态
  1. mysql> show slave status\G
  2. # 正确结果
  3. ...
  4. Slave_IO_Running:Yes
  5. Slave_SQL_Running:Yes
  6. ...
复制代码
7.13.3 解除主库只读锁定

  1. mysql> unlock tables;
复制代码
7.13.4 错误解决

1.初始化错误:error while loading shared libraries: libaio.so.1
  1. $ rpm -qa|grep libaio   
  2. $ yum install  libaio-devel.x86_64
复制代码
2.实行 show slave status\G 报如下错误
  1. ...
  2. Slave_IO_Running:No
  3. Slave_SQL_Running:Yes
  4. ...
  5. Last_IO_Error:Fatal error:The Slave I/O thread stops because master and slave have equal MySQL Server UUIDs;these UUIDs must be different for replication to work.
  6. ...
复制代码
原因:主和从有雷同的MySQL服务器uuid,虚拟机克隆容易出现此题目。
查察主从库的UUID号
  1. $ vim /var/lib/mysql/auto.cnf
  2. [auto]
  3. server-uuid=d3c0acb0-xxxxxx-xxxxx-xxxxx-xx01
复制代码
如果UUID一样,修改从库UUID
  1. [auto]
  2. server-uuid=d3c0acb0-xxxxxx-xxxxx-xxxxx-xx02
复制代码
重启从库Mysql服务器后,查察服务器状态
  1. $ service mysql restart
  2. mysql> show slave status\G;
复制代码
7.14 导入导出

导出布局和数据
  1. $ mysqldump -uroot -p bh_community > /home/java/abc.sql
复制代码
指定表导出布局和数据
  1. $ mysqldump -uroot -p bh_community wisdom_domestic > /home/java/1.sql
复制代码
导入数据
  1. mysql> source /home/java/1.sql
复制代码
8. JDK8 & JRE8

8.1 卸载OpenJDK

查察OpenJDK文件
  1. $ rpm -qa | grep java
  2. # 结果
  3. javapackages-tools-3.4.1-11.el7.noarch
  4. java-1.7.0-openjdk-headless-1.7.0.251-2.6.21.1.el7.x86_64
  5. python-javapackages-3.4.1-11.el7.noarch
  6. tzdata-java-2019c-1.el7.noarch
  7. java-1.7.0-openjdk-1.7.0.251-2.6.21.1.el7.x86_64
  8. java-1.8.0-openjdk-1.8.0.242.b08-1.el7.x86_64
  9. java-1.8.0-openjdk-headless-1.8.0.242.b08-1.el7.x86_64
复制代码
删除以下文件
  1. $ rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.251-2.6.21.1.el7.x86_64
  2. $ rpm -e --nodeps java-1.7.0-openjdk-1.7.0.251-2.6.21.1.el7.x86_64
  3. $ rpm -e --nodeps java-1.8.0-openjdk-1.8.0.242.b08-1.el7.x86_64
  4. $ rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.242.b08-1.el7.x86_64
复制代码
8.2 安装Oracle JRE

下载地点:https://www.java.com/en/download/manual.jsp,上传至服务器
下载&解压&移动
  1. $ wget https://bh-temporary.oss-cn-chengdu.aliyuncs.com/jre-8u261-linux-x64.tar.gz
  2. $ tar -zxvf jre-8u261-linux-x64.tar.gz
  3. $ mv jre1.8.0_261/ /usr/local/
复制代码
修改环境变量
  1. $ vim /etc/profile
  2. # 末尾加入以下内容,JAVA_HOME路径根据实际路径修改
  3. export JAVA_HOME=/usr/local/jre1.8.0_261
  4. export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
  5. export PATH=$JAVA_HOME/bin:$PATH
  6. # 备选(可用)
  7. export JAVA_HOME=/usr/local/jre1.8.0_261
  8. export CLASSPATH=.:${JAVA_HOME}/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib
  9. export PATH=.:${JAVA_HOME}/bin:$PATH
复制代码
革新配置
  1. $ source /etc/profile
复制代码
验证
  1. $ java -version
复制代码
8.3 安装Oracle JDK

解压&移动
  1. $ tar -zxvf jdk-8u261-linux-x64.tar.gz
  2. $ mv jdk1.8.0_261/ /usr/local/
复制代码
环境变量
  1. $ vim /etc/profile
  2. # 末尾加入以下内容,JAVA_HOME路径根据实际路径修改
  3. export JAVA_HOME=/usr/local/jdk1.8.0_261
  4. export JRE_HOME=$JAVA_HOME/jre
  5. export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
  6. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
  7. # 备选
  8. export JAVA_HOME=/usr/local/jdk1.8.0_261
  9. export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
  10. export PATH=.:${JAVA_HOME}/bin:$PATH
复制代码
革新配置
  1. $ source /etc/profile
复制代码
验证
  1. $ java -version
  2. $ java$ javac
复制代码
9. Redis

下载地点:http://download.redis.io/releases/redis-5.0.8.tar.gz
安装gcc环境
  1. # 版本号查询,未安装时安装
  2. $ gcc --version
  3. $ yum install gcc
复制代码
开放端口(仅防火墙开启时配置)
  1. $ firewall-cmd --zone=public --add-port=6379/tcp --permanen
  2. $ firewall-cmd --reload
复制代码
9.1 下载&解压&移动

下载
  1. $ wget http://download.redis.io/releases/redis-5.0.8.tar.gz
复制代码
解压&移动
  1. $ tar -zxvf redis-5.0.8.tar.gz
  2. $ mv redis-5.0.8/ /usr/local/
  3. $ cd /usr/local/redis-5.0.8/
复制代码
9.2 编译安装

  1. $ make MALLOC=libc && make PREFIX=/usr/local/redis-5.0.8 install
  2. #如果提示make找不到命令,安装gcc
复制代码
9.3 测试

  1. $ cd bin
  2. $ ./redis-server
复制代码
9.4 修改配置文件

  1. $ mkdir /etc/redis
  2. $ cp /usr/local/redis-5.0.8/redis.conf /etc/redis/6379.conf
  3. $ vim /etc/redis/6379.conf
  4. # 密码
  5. requirepass xxxx
  6. # 守护进程
  7. daemonize yes
  8. # 远程访问
  9. # bind 127.0.0.1
  10. # 外部访问
  11. protected-mode yes
复制代码
注:
  1.         <font style="color:#999999;">1.关闭protected-mode模式,此时外部网络可以直接访问</font>
  2.         <font style="color:#999999;">2.开启protected-mode保护模式,需配置bind ip或者设置访问密码</font>
复制代码
9.5 开机自启

复制脚本
  1. $ cp -a /usr/local/redis-5.0.8/utils/redis_init_script /etc/rc.d/init.d/redisd
复制代码
修改脚本
  1. $ vim /etc/rc.d/init.d/redisd
  2. # 修改脚本,根据实际路径修改
  3. EXEC=/usr/local/redis-5.0.8/bin/redis-server
  4. CLIEXEC=/usr/local/redis-5.0.8/bin/redis-cli
复制代码
添加自启服务:方式一
  1. $ vim /etc/rc.d/rc.local
  2. # 末尾添加以下内容
  3. /etc/rc.d/init.d/redisd start
复制代码
添加自启服务:方式二
  1. $ chkconfig redisd on
  2. # 如果出现 service redisd does not support chkconfig 错误,在启动脚本开头添加如下注释来修改运行级别:
  3.     #!/bin/sh
  4.     # chkconfig:   2345 90 10
复制代码
9.6 错误解决

9.6.1 设置服务器密码后,使用service redis stop 出现 (error) NOAUTH Authentication required
  1. # 修改redis服务脚本,加入如下所示的授权信息即可:
  2. $ vim /etc/rc.d/init.d/redisd
  3. $ CLIEXEC -a "password" -p $REDISPORT shutdown
复制代码
10. ActiveMq

下载地点:http://activemq.apache.org/components/classic/download/
https://mirrors.tuna.tsinghua.edu.cn/apache//activemq/5.15.13/apache-activemq-5.15.13-bin.tar.gz
10.1 下载&解压&移动

  1. $ wget https://mirrors.tuna.tsinghua.edu.cn/apache//activemq/5.15.13/apache-activemq-5.15.13-bin.tar.gz
  2. $ tar -zxvf apache-activemq-5.15.13-bin.tar.gz
  3. $ mv apache-activemq-5.15.13/ /usr/local/
复制代码
10.2 启动测试

  1. $ cd /usr/local/apache-activemq-5.15.13/bin
  2. $ ./activemq start
  3. $ ./activemq stop
复制代码
10.3 修改账号和密码

  1. $ cd /usr/local/apache-activemq-5.15.13/conf
  2. $ vim jetty-realm.properties
  3. # admin: admin,admin
  4. # 第一个admin为账号,第二个为密码,第三个为角色
复制代码
10.4 开机自启

创建软毗连
  1. $ ln -s /usr/local/apache-activemq-5.15.13/bin/activemq /etc/init.d/
复制代码
修改启动脚本
  1. $ vim /etc/init.d/activemq
  2. # 在#!/bin/sh后面换行添加如下内容:
  3. # chkconfig: 345 63 37
  4. # description: Auto start ActiveMQ
  5. JAVA_HOME=/usr/local/jre1.8.0_261
  6. JAVA_CMD=java
  7. # 注意:JAVA_HOME 请对应实际路径和版本
复制代码
添加自启服务
  1. $ vim /etc/rc.d/rc.local
  2. # 末尾添加以下内容:
  3. /etc/rc.d/init.d/activemq start
复制代码
11. Nginx

11.1 安装 PCRE

  1. $ yum install -y pcre pcre-devel
复制代码
以下为备选安装方式
下载地点:https://ftp.pcre.org/pub/pcre/
作用:让 Nginx 支持 Rewrite 功能,必须安装才华编译,选最新版
下载&解压&移动
  1. $ wget https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz
  2. $ tar -zxvf pcre-8.44.tar.gz
  3. $ mv pcre-8.44/ /usr/local/
复制代码
编译&安装
  1. $ /usr/local/pcre-8.44
  2. $ ./configure
  3. $ ./configure && make && make install
复制代码
验证
  1. $ pcre-config --version
复制代码
11.2 安装 zlib

  1. $ yum install -y zlib zlib-devel
复制代码
以下为备选安装方式
下载地点:http://zlib.net/
下载&解压&移动&编译
  1. $ wget http://zlib.net/zlib-1.2.11.tar.gz
  2. $ tar -zxvf zlib-1.2.11.tar.gz
  3. $ mv zlib-1.2.11/ /usr/local/
  4. $ cd /usr/local/zlib-1.2.11/
  5. $ ./configure && make && make install
复制代码
11.3 openSSL模块

下载地点:https://www.openssl.org/source/
  1. $ wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
  2. $ tar -zxvf openssl-1.1.1g.tar.gz
  3. $ mv openssl-1.1.1g/ /usr/local/
复制代码
11.4 RTMP模块

  1. $ unzip nginx-rtmp-module-master.zip
  2. $ mv nginx-rtmp-module-master/ /usr/local/nginx-rtmp-module
复制代码
11. 5 安装 nginx

下载地点:http://nginx.org/en/download.html
http://nginx.org/download/nginx-1.18.0.tar.gz
下载&解压&移动
  1. $ wget http://nginx.org/download/nginx-1.18.0.tar.gz
  2. $ tar -zxvf nginx-1.18.0.tar.gz
  3. $ mv nginx-1.18.0/ /usr/local/
复制代码
配置文件
  1. $ mkdir -p /etc/nginx
  2. $ cp /usr/local/nginx-1.18.0/conf/nginx.conf /etc/nginx/
复制代码
配置&编译
  1. $ cd /usr/local/nginx-1.18.0/
  2. $ ./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf --with-http_ssl_module --with-http_stub_status_module --with-openssl=/usr/local/openssl-1.1.1g/ --add-module=/usr/local/nginx-rtmp-module;
  3. $ make && make install
复制代码
开机自启
  1. $ vim /etc/rc.d/rc.local
  2. # 末尾添加以下内容
  3. /usr/local/nginx/sbin/nginx
复制代码
编译错误解决:
  1. # error: this statement may fall through [-Werror=implicit-fallthrough=]
  2. $ vim /home/soft/nginx-1.18.0/objs/Makefile
  3. $ 在CFLAGS参数后面加上 -Wno-implicit-fallthrough
  4. # 参考:https://blog.csdn.net/jaybill/article/details/80164370,忽略gcc编译时switch-case中缺少break的错误
复制代码
配置(推流、文件夹映射、微信付出证书)
  1. user  root;
  2. worker_processes  2;
  3. #error_log  logs/error.log;
  4. #error_log  logs/error.log  notice;
  5. #error_log  logs/error.log  info;
  6. #pid        logs/nginx.pid;
  7. events {
  8.     worker_connections  1024;
  9. }
  10. # 推流模块
  11. rtmp {
  12.     server {
  13.         listen 8012;
  14.         application myapp {
  15.             live on;  
  16.                 }
  17.         application hls {  
  18.             live on;
  19.             hls on;
  20.             hls_path /usr/local/nginx/temp/hls;   
  21.             hls_fragment 1s;
  22.             hls_playlist_length 3s;  
  23.                 }
  24.     }
  25. }
  26. http {
  27.     include       mime.types;
  28.     default_type  application/octet-stream;
  29.     #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
  30.     #                  '$status $body_bytes_sent "$http_referer" '
  31.     #                  '"$http_user_agent" "$http_x_forwarded_for"';
  32.     #access_log  logs/access.log  main;
  33.     sendfile        on;
  34.     #tcp_nopush     on;
  35.     #keepalive_timeout  0;
  36.     keepalive_timeout  65;
  37.     #gzip  on;
  38.        
  39.         # 智慧社区
  40.         server {
  41.                 keepalive_requests 200; #单连接请求上限次数。
  42.         listen       80;
  43.         server_name  www.behomesc.com; #如果是监听本机IP,直接写localhost或者不写
  44.         #charset koi8-r;
  45.         #access_log  logs/host.access.log  main;
  46.         location  / {   
  47.                         proxy_pass  http://127.0.0.1:9001;
  48.                 }
  49.                
  50.                 location /community/download/ {
  51.                         #root /home/community/images/;        #静态目录
  52.                         autoindex on;
  53.                         autoindex_exact_size on;
  54.                         autoindex_localtime on;
  55.                         charset utf-8;
  56.                         #虚拟静态目录,访问路径会变成xxxx/software/software/xxx
  57.                         alias /home/community/images/;
  58.                         #add_header Content-Type "application/octet-stream";
  59.                 }
  60.     }
  61.         # 大屏
  62.         server {
  63.                 keepalive_requests 200; #单连接请求上限次数。
  64.                 listen       80;
  65.         server_name  data.behomesc.com; #如果是监听本机IP,直接写localhost或者不写
  66.         charset utf-8;
  67.         location / {   
  68.                         root /home/java/shequyemian;
  69.                         index login.html;
  70.                 }
  71.     }
  72.         # 微信支付(文件)
  73.         server {
  74.                 #root /home/java/wx/;   #静态下载目录
  75.                 keepalive_requests 200; #单连接请求上限次数。
  76.         listen       80;
  77.         server_name  wxzf.behomesc.com; #如果是监听本机IP,直接写localhost或者不写
  78.                 charset utf-8;
  79.                
  80.         location / {   
  81.                         proxy_pass  http://127.0.0.1:9001;
  82.                 }
  83.                
  84.                 #location ~^/wx/.*\.txt$ {   #下载路径匹配
  85.                 #        autoindex on;
  86.                 #        autoindex_exact_size on;
  87.                 #        autoindex_localtime on;
  88.                 #        charset utf-8;
  89.         #}
  90.                
  91.                 location /mp/ {
  92.                         autoindex on;
  93.                         autoindex_exact_size on;
  94.                         autoindex_localtime on;
  95.                         charset utf-8;
  96.                         alias /home/java/wx/;
  97.                 }
  98.        
  99.     }
  100.        
  101.     # another virtual host using mix of IP-, name-, and port-based configuration
  102.     #
  103.     #server {
  104.     #    listen       8000;
  105.     #    listen       somename:8080;
  106.     #    server_name  somename  alias  another.alias;
  107.     #    location / {
  108.     #        root   html;
  109.     #        index  index.html index.htm;
  110.     #    }
  111.     #}
  112.     # HTTPS server
  113.     #
  114.     #server {
  115.     #    listen       443 ssl;
  116.     #    server_name  localhost;
  117.     #    ssl_certificate      cert.pem;
  118.     #    ssl_certificate_key  cert.key;
  119.     #    ssl_session_cache    shared:SSL:1m;
  120.     #    ssl_session_timeout  5m;
  121.     #    ssl_ciphers  HIGH:!aNULL:!MD5;
  122.     #    ssl_prefer_server_ciphers  on;
  123.     #    location / {
  124.     #        root   html;
  125.     #        index  index.html index.htm;
  126.     #    }
  127.     #}
  128. }
复制代码
12.向日葵

适用centos 7.8 2003版
下载:http://download.oray.com/sunlogin/linux/SunloginClient-10.0.2.24779_amd64.rpm
依赖:libappindicator-gtk3
  1. $ yum install libappindicator-gtk3
复制代码
安装
  1. $ rpm -ivh SunloginClient-10.0.2.24779_amd64.rpm
复制代码
13.Teamviewer

下载最新版本
依赖
  1. $ yum -y install epel-release
复制代码
安装
  1. $ yum -y install teamviewer_15.7.6.x86_64.rpm
复制代码
如果依赖下载失败,可以尝试更换国内源
设置密码
  1. $ sudo teamviewer --passwd NewPasswd
复制代码
查察信息
  1. $ teamviewer info
  2. # 注:必须设置密码后才能看到远程码
复制代码
启动&停止&重启
  1. $ sudo teamviewer --daemon start
  2. $ sudo teamviewer --daemon stop
  3. $ sudo teamviewer --daemon restart
复制代码
xfce(一般用不到)
  1. $ sudo startxfce4
复制代码
重置ID
  1. # 1.清除旧配置文件,并重启$ sudo teamviewer daemon stop$ sudo rm -f /opt/teamviewer/config/global.conf$ sudo teamviewer daemon start# 2.重设密码$ sudo teamviewer --passwd NewPasswd
  2. # 3.重启$ sudo teamviewer --daemon restart# 4.ID查询(如果看不到ID,手动竣事所有team历程后重启)$ sudo teamviewer info
复制代码
14.FFmpeg

centos 7.x
  1. $ sudo yum -y install https://download.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  2. $ sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
  3. $ sudo yum install --nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm
  4. $ sudo yum install http://rpmfind.net/linux/epel/7/x86_64/Packages/s/SDL2-2.0.10-1.el7.x86_64.rpm
  5. $ sudo yum install ffmpeg
复制代码
centos 8.x
  1. $ sudo yum -y install https://download.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
  2. $ sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
  3. $ sudo yum install --nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm
  4. $ sudo yum install http://rpmfind.net/linux/epel/7/x86_64/Packages/s/SDL2-2.0.10-1.el7.x86_64.rpm
  5. $ sudo yum install ffmpeg
复制代码
开辟库
  1. $ sudo yum -y install ffmpeg-devel
复制代码
版本检查
  1. $ rpm -qi ffmpeg
  2. $ ffmpeg -version
复制代码
15.Elasticsearch 7.6.2

下载地点:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.2-linux-x86_64.tar.gz
默认端口:9200,不能以root用户启动
启动到背景
  1. $ ./elasticsearch &
复制代码
内存限制
  1. $ vim ../elasticsearch-7.6.2/config/jvm.options
  2. # 最小与最大内存
  3. -Xms1g        #-Xms128m
  4. -Xmx1g        #-Xmx128m
复制代码
错误 bootstrap checks failed
  1. ERROR: [1] bootstrap checks failed
  2. [1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
复制代码
解决
  1. $ vim ../elasticsearch-7.6.2/config/elasticsearch.yml
  2. #修改为单节点,这里的node-1为node-name配置的值(多个节点直接写后面["node-1","node-2"])
  3. cluster.initial_master_nodes: ["node-1"]
  4. 如果还是报错,继续配置:
  5. $ vim /etc/security/limits.conf
  6. #在末尾添加
  7. esyonghu soft nofile 65536
  8. esyonghu hard nofile 65536
  9. esyonghu soft nproc 4096
  10. esyonghu hard nproc 4096
  11. $ vim /etc/sysctl.conf
  12. # 在末尾添加
  13. vm.max_map_count = 655360
  14. # 配置生效(成功会输出:vm.max_map_count = 655360)
  15. sysctl -p
复制代码
16.RocketMq

16.1 安装 RocketMq

官网:http://rocketmq.apache.org/
下载地点:https://mirror.bit.edu.cn/apache/rocketmq/4.7.1/rocketmq-all-4.7.1-bin-release.zip
解压
  1. $ unzip rocketmq-all-4.7.1-bin-release.zip
  2. $ cd rocketmq-all-4.7.1-bin-release/bin/
复制代码
启动名称服务
  1. $ cd rocketmq-all-4.7.1-bin-release/bin/
  2. # 1.启动名称服务
  3. $ nohup sh mqnamesrv &
  4. # 查看日志
  5. $ tail -f nohup.out
  6. # The Name Server boot success. serializeType=JSON 表示启动成功
  7. 默认端口:9876
复制代码
启动 Broker服务
  1. $ nohup sh mqbroker -n 127.0.0.1:9876 &
  2. 默认端口:10911
  3. VIP通道端口:默认端口-2(10909)
  4. 需要开放上诉两个端口
复制代码
开启自动创建队列
  1. & sh mqbroker -m
  2. #自动创建topic(客户端和服务器版本必须一致)
  3. autoCreateTopicEnable=true
复制代码
16.2 开机自启(有题目)

脚本
  1. #!/usr/bin/env bash
  2. #
  3. # rocketmq - this script starts and stops the rocketmq daemon
  4. #
  5. # chkconfig: - 85 15
  6. export JAVA_HOME=/usr/local/jdk1.8.0_261
  7. ROCKETMQ_HOME=/usr/local/rocketmq-4.7.1
  8. ROCKETMQ_BIN=${ROCKETMQ_HOME}/bin
  9. ADDR=`hostname -i`:9876
  10. LOG_DIR=${ROCKETMQ_HOME}/logs
  11. NAMESERVER_LOG=${LOG_DIR}/namesrv.log
  12. BROKER_LOG=${LOG_DIR}/broker.log
  13. start() {
  14. if [ ! -d ${LOG_DIR} ];then
  15. mkdir ${LOG_DIR}
  16. fi
  17. cd ${ROCKETMQ_HOME}
  18. nohup sh bin/mqnamesrv > ${NAMESERVER_LOG} 2>&1 &
  19. echo -n "The Name Server boot success..."
  20. nohup sh bin/mqbroker -n ${ADDR} > ${BROKER_LOG} 2>&1 &
  21. echo -n "The broker[%s, ${ADDR}] boot success..."
  22. }
  23. stop() {
  24. cd ${ROCKETMQ_HOME}
  25. sh bin/mqshutdown broker
  26. sleep 1
  27. sh bin/mqshutdown namesrv
  28. }
  29. restart() {
  30. stop
  31. sleep 5
  32. start
  33. }
  34. case "$1" in
  35. start)
  36. start
  37. ;;
  38. stop)
  39. stop
  40. ;;
  41. restart)
  42. restart
  43. ;;
  44. *)
  45. echo $"Usage: $0 {start|stop|restart}"
  46. exit 2
  47. esac
复制代码
添加开机自启服务
  1. $ chmod a+x rocketmq.sh
  2. $ mv rocketmq.sh /etc/init.d/rocketmq
  3. # 方式一
  4. $ vim /etc/rc.local
  5. 末尾添加
  6. /etc/init.d/rocketmq start
  7. # 方式二
  8. $ chkconfig --add rocketmq
复制代码
管理命令
  1. 启动:service rocketmq start
  2. 关闭:service rocketmq stop
  3. 重启:service rocketmq restart
复制代码
16.3 可视化控制台

下载地点:https://github.com/apache/rocketmq-externals
名称:rocketmq-console
编译打包
  1. $ mvn clean package -Dmaven.test.skip=true
复制代码
无法毗连获取broker
  1. 修改配置文件:src/main/resources/application.properties
  2. # 指向服务器(集群时写多个)
  3. rocketmq.config.namesrvAddr=192.168.0.101:9876
  4. # 开启登录
  5. rocketmq.config.loginRequired=true
  6. # 用户名、密码
  7. 修改 users.properties 文件
  8. #修改POM文件RocketMq版本号
  9. <rocketmq.version>4.7.1</rocketmq.version>
复制代码
16.4 错误解决

1、内存不敷
  1. OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005c0000000, 8589934592, 0) failed; error='Cannot allocate memory' (errno=12)
  2. # 解决
  3. 编辑:runserver.sh和runbroker.sh两个文件
  4. 修改:JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
复制代码
2、Please set the JAVA_HOME variable in your environment, We need java(x64)
  1. 编辑:runserver.sh和runbroker.sh两个文件
  2. [ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
  3. 前面加上
  4. export JAVA_HOME=/usr/local/jre1.8.0_261
复制代码
3、无法找到topic
  1. # 使用以下命令启动 broker
  2. $ nohup sh mqbroker -n localhost:9876 autoCreateTopicEnable=true &
复制代码
4、阿里云多网卡题目
  1. org.apache.rocketmq.remoting.exception.RemotingTooMuchRequestException:
  2. sendDefaultImpl call timeout
复制代码
  1. 修改配置文件:conf/broker.conf
  2. 加入以下配置(外网IP)
  3. brokerIP1=120.76.62.13
  4. # 重启broker
  5. $ nohup sh bin/mqbroker -n localhost:9876 -c conf/broker.conf &
  6. 集群部署时,修改集群用的配置文件
复制代码
17.Maven

17.1 直接安装

  1. # 可能会依赖openJDK
  2. $ yum install maven
复制代码
修改仓库地点
  1. 配置文件位置
  2. /etc/maven/settings.xml
  3. # 依赖存放位置,可选设置,mavenRepository文件夹需要提前创建,并设置777权限
  4. <localRepository>/home/behome/mavenRepository</localRepository>
  5. # mirrors节点下添加阿里云仓库地址
  6. <mirror>  
  7.     <id>nexus-aliyun</id>  
  8.     <mirrorOf>central</mirrorOf>   
  9.     <name>Nexus aliyun</name>  
  10.     <url>http://maven.aliyun.com/nexus/content/groups/public</url>  
  11. </mirror>
复制代码
17.2 安装包安装

  1. $ tar -zxvf apache-maven-3.6.3-bin.tar.gz$ mv apache-maven-3.6.3 /usr/local/# 环境变量$ vim /etc/profile末尾添加export M2_HOME=/usr/local/apache-maven-3.6.3export PATH=.:$JAVA_HOME/bin:$M2_HOME/bin:$PATH# 立刻生效$ source /etc/profile
  2. # 验证$ mvn -v# 配置文件位置/usr/local/apache-maven-3.6.3/conf/settings.xml# 查察配置信息$ mvn help:effective-settings
复制代码
18.HTML文件部署

18.1 Nginx

修改nginx.conf
  1. $ vim /etc/nginx/nginx.conf
  2. # root用户运行
  3. user  root;
  4. # http模块下server配置
  5. listen       8081;
  6. server_name  localhost;
  7. location / {
  8.     # root   dist;
  9.     root   /home/behome/html/dist;
  10.     index  index.html index.htm;
  11.     # spa(单页面应用配置)
  12.     try_files $uri $uri/ /index.html;
  13. }
  14. # root后面为文件夹路径,修改权限
复制代码
访问:http://ip:8081/index.html
18.2 Tomcat

目次:将html项目文件夹放入webapps目次内里
修改server.xml
  1. # 端口
  2. <Connector port="8080" protocol="HTTP/1.1"
  3.                connectionTimeout="20000"
  4.                redirectPort="8443" />
  5.                         
  6. # 添加host节点
  7. <Host name="127.0.0.1" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false"  xmlNamespaceAware="false">
  8.           
  9.         <Context path="" docBase="webapps 里文件夹的名称" debug="0" reloadable="true" crossContext="true"/>
  10.         <Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="tot_log." suffix=".txt" timestamp="true"/>
  11.           </Host>
复制代码
访问:http://ip:8080/index.html
19.PHP

下载安装编译工具
  1. $ yum groupinstall -y 'Development Tools'
复制代码
安装依赖包
  1. $ yum install -y libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses curl gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel expat-devel xmlrpc-c xmlrpc-c-devel libicu-devel libmcrypt-devel libmemcached-devel sqlite-devel
复制代码
下载并解压php7.4.7
  1. $ wget http://php.net/distributions/php-7.4.7.tar.gz
  2. $ tar -zxvf php-7.4.7.tar.gz
复制代码
编译安装
  1. $ cd php-7.4.7
  2. $ ./configure
  3. $ make && make install
复制代码
检查
  1. php -v
复制代码
20.GO

下载地点:https://dl.google.com/go/go1.15.3.linux-amd64.tar.gz
解压
  1. $ tar -zxvf go1.15.3.linux-amd64.tar.gz -C /usr/local/
复制代码
环境变量
  1. $ vim /etc/profile
  2. #添加以下内容
  3. export PATH=$PATH:/usr/local/go/bin
  4. $ source /etc/profile
复制代码
版本
  1. $ go version
复制代码
21.禅道

手册:https://www.zentao.net/book/zentaopmshelp/40.html
启动服务
  1. # -ap 设置Apache端口,-mp设置Mysql端口
  2. $ /opt/zbox/zbox start -ap 8181 -mp 3307
  3. # 默认管理员帐号
  4. admin,123456
复制代码
数据库管理
  1. # 添加用户
  2. $ /opt/zbox/auth/adduser.sh
  3. # 网页(会验证两次,第一次验证是adduser.sh添加的用户名和密码)
  4. 系统:默认选择MySQL。
  5. 服务器: 127.0.0.1:mysql端口 (ip只能写127.0.0.1)
  6. 用户名: root(禅道默认的数据库用户名是 root)
  7. 密码:123456( 禅道默认的数据库密码是123456)
  8. 数据库:zentao
  9. #命令行
  10. 登录数据库:/opt/zbox/bin/mysql -u root -P mysql端口 -p  (比如:/opt/zbox/bin/mysql -u root -P 3306 -p)
  11. 导入数据库:/opt/zbox/bin/mysql -u root -P mysql端口 -p 要导入的库名 < XXXX.sql (比如:/opt/zbox/bin/mysql -u root -P 3306 -p zentao < zentao.sql)
复制代码
22.Nacos

官网:https://nacos.io/zh-cn/docs/quick-start.html
  1. # 单机模式
  2. $ cd /opt/nacos/bin
  3. $ sh startup.sh -m standalone
  4. # ubuntu系统运行脚本报错提示[符号找不到],可尝试以下命令
  5. $ bash startup.sh -m standalone
  6. # 默认信息
  7. 端口:8848,账号密码:nacos,控制台地址:ip:8848/nacos
复制代码
23.Sentinel

官网:https://github.com/alibaba/Sentinel/wiki/%E6%8E%A7%E5%88%B6%E5%8F%B0
  1. # 启动命令
  2. $ cd /opt
  3. $ nohup java -Dserver.port=8858 -Dcsp.sentinel.dashboard.server=localhost:8858 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.0.jar >/dev/null 2>&1 &
  4. # 默认信息
  5. 端口8080,账号密码:sentinel
复制代码
24.RabbitMq

24.1 Erlang安装

官网:https://www.erlang.org/downloads
下载地点:https://github.com/rabbitmq/erlang-rpm/releases
版本介绍(el6/7/8)
  1. # centos 6.x
  2. erlang-23.1.4-1.el6.x86_64.rpm
  3. # centos 7.x
  4. erlang-23.1.4-1.el7.x86_64.rpm
  5. # centos 8.x
  6. erlang-23.1.4-1.el8.x86_64.rpm
复制代码
安装
  1. $ rpm -ivh erlang-23.1.4-1.el7.x86_64.rpm
复制代码
24.2 rabbitmq 安装

下载地点:https://www.rabbitmq.com/install-rpm.html#downloads,版本区分同erlang
https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.9/rabbitmq-server-3.8.9-1.el7.noarch.rpm
依赖安装
  1. $ yum install -y socat
复制代码
安装
  1. $ rpm -ivh rabbitmq-server-3.8.9-1.el7.noarch.rpm
复制代码
启动
  1. $ systemctl start rabbitmq-server
复制代码
开机启动
  1. $ systemctl enable rabbitmq-server
复制代码
其他命令
  1. #查看启动后的情况
  2. $ rabbitmqctl status
  3. #关闭服务
  4. $ rabbitmqctl stop
  5. #重启rabbitmq
  6. $ systemctl restart rabbitmq-server
复制代码
注意:默认配置5672端口会和activemq冲突
24.3 rabbitmq 配置

地点:http://localhost:15672/,默认账号密码:guest guest,默认端口:
  1. 4369:erlang发现口
  2. 5672:client端通信口,客户端要连接RabbitMQ服务时要用到
  3. 15672:后台管理界面ui端口,进入管理后台时访问url如:http://localhost:15672/
  4. 25672:server间内部通信口
  5. 安装目录:/usr/lib/rabbitmq/lib/rabbitmq_server-3.8.9
复制代码
启用网页版背景管理插件
  1. $ rabbitmq-plugins enable rabbitmq_management
复制代码
新建用户名为admin,密码为admin的管理员,授予管理员(administrator)权限
  1. $ rabbitmqctl add_user admin admin
  2. $ rabbitmqctl set_user_tags admin administrator
复制代码
设置admin可以使用的虚机权限(长途访问)
  1. $ rabbitmqctl add_vhost admin
  2. # '/' 为虚拟主机名,即可连接的空间
  3. $ rabbitmqctl set_permissions -p '/' admin ".*" ".*" ".*"
复制代码
修改配置
  1. $ vim /etc/rabbitmq/rabbitmq.conf
  2. # AMQP 0-9-1 and 1.0 port,默认5672
  3. listeners.tcp.default = 5672
  4. # 数据统计间隔,毫秒
  5. collect_statistics_interval = 30000
  6. # web管理,默认15672
  7. management.tcp.port = 15672
  8. management.tcp.ip = 0.0.0.0
  9. # web登录会话过期时间
  10. management.login_session_timeout = 60
复制代码
资料
  1. # rabbitmq配置
  2. https://www.rabbitmq.com/configure.html#config-items
  3. # management插件配置介绍
  4. https://www.rabbitmq.com/management.html#statistics-interval
复制代码
24.4 插件管理

插件管理
  1. #插件列表:
  2. $ rabbitmq-plugins list
  3. #启动插件:
  4. $ rabbitmq-plugins enable XXX   (XXX为插件名)
  5. #停用插件:
  6. $ rabbitmq-plugins disable XXX
复制代码
插件安装
  1. 插件下载地址:https://www.rabbitmq.com/community-plugins.html
  2. 插件上传至此目录(插件为ez后缀):
  3. /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.9/plugins
  4. 启用插件
  5. $ rabbitmq-plugins enable rabbitmq_delayed_message_exchange
复制代码
24.5 docker安装rabbitmq

拉取rabbitmq镜像
  1. $ docker pull rabbitmq:3.8.1-management
复制代码
查察镜像:
  1. $ docker images
  2. REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
  3. rabbitmq            3.8.1-management    36ed80b6a1b1        5 weeks ago         180MB
复制代码
运行容器:
  1. $ docker run --name rabbitmq -d -p 5672:5672 -p 15672:15672 -v /data:/var/lib/rabbitmq rabbitmq:3.8.1-management
复制代码
运行容器查询
  1. $ docker ps
复制代码
25.Seata

下载&解压&移动
  1. $ tar -zxvf seata-server-1.4.0.tar.gz
  2. $ mv seata /usr/local/seata-1.4.0/
复制代码
File+DB模式启动配置
  1. $ cd /usr/local/seata-1.4.0/conf/
  2. 1.vim打开registry.conf ,配置config 和registry 的节点都为file:type = "file",默认即为file
  3. 2.vim打开file.conf ,配置mode 为db 并配置相关数据库链接
复制代码
启动服务
  1. $ cd /usr/local/seata-1.4.0/bin/
  2. $ ./seata-server.sh -h 127.0.0.1 -p 8091 -m db -n 1
  3. # 后台启动
  4. $ nohup ./seata-server.sh -h 127.0.0.1 -p 8091 -m db -n 1 >/dev/null 2>&1 &
复制代码
nacos对接参考:
https://blog.csdn.net/jixieguang/article/details/110621561
26.Minio

官网地点:https://docs.min.io/cn/minio-quickstart-guide.html
GNU/Linux_x64_intel版下载地点:https://dl.min.io/server/minio/release/linux-amd64/minio
配置&启动
  1. $ mkdir -p /usr/local/minio
  2. $ mv minio /usr/local/minio
  3. # 通过环境变量设置key,每次启动都需要设置
  4. $ export MINIO_ACCESS_KEY=behome
  5. $ export MINIO_SECRET_KEY=behome@2020
  6. # 前台启动
  7. $ cd /usr/local/minio
  8. $ ./minio server /data/minio
  9. # 后台启动,默认端口9000
  10. $ mkdir -p /data/minio/log
  11. $ nohup ./minio server --address 0.0.0.0:9000 /data/minio > /data/minio/log/minio.log 2>&1 &
  12. # /data/minio 为文件存放目录
  13. # 配置文件 config.json 路径
  14. /data/minio/.minio.sys/config
复制代码
API介绍
  1. Go:         https://docs.min.io/docs/golang-client-quickstart-guide
  2. Java:       https://docs.min.io/docs/java-client-quickstart-guide
  3. Python:     https://docs.min.io/docs/python-client-quickstart-guide
  4. JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide
  5. .NET:       https://docs.min.io/docs/dotnet-client-quickstart-guide
复制代码
TLS证书目次(root用户启动为例)
  1. $ /root/.minio/certs
  2. $ {HOME}/.minio/certs
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4