若是安装过mysql,删除node
停掉mysql进程:mysql
pkill -9 mysqld
复制代码
删除mysql:sql
rpm -qa|grep -i mysql
yum -y remove
mysql-community-client-5.6.38-2.el7.x86_64
复制代码
依次卸载 直到没有vim
yum安装bash
cd /usr/local/src/
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
yum -y install mysql-server
复制代码
默认配置文件路径:session
启动mysqlsocket
service mysqld restart
复制代码
查看临时密码:ui
$ grep "password" /var/log/mysqld.log
临时密码信息以下:
[Note] A temporary password is generated for root@localhost: M:sd6OoNZkz1
复制代码
用临时密码登陆:spa
mysql -uroot -p
复制代码
修改密码(密码8位以上,大小写字母+数字+特殊符号):rest
set password for root@localhost = password('Node2018!');
复制代码
登陆mysql,查看现有的user:
mysql -uroot -pNode2018!
mysql> select host,user from mysql.user;
+-----------+---------------+
| host | user |
+-----------+---------------+
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+---------------+
3 rows in set (0.01 sec)
复制代码
建立一个新的帐号:
CREATE USER 'root'@'%' IDENTIFIED BY 'Node2018!';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
复制代码
刷新权限:
FLUSH PRIVILEGES;
复制代码
编辑mysql的配置文件: vim /etc/my.cnf
192.168.7.2:
log-bin=mysql-bin #binlog文件的前缀,能够修改
binlog-format=ROW #选择row模式
server_id=2 #必须,不一样mysql不能重复
log_slave_updates=1 #开启之后从库会记录主库同步的binlog。
auto_increment_increment=2 #步进值,通常有n台主MySQL就填n。
auto_increment_offset=1 #起始值。通常填第n台主MySQL。
复制代码
192.168.7.3:
log-bin=mysql-bin #binlog文件的前缀,能够修改
binlog-format=ROW #选择row模式
server_id=3 #必须,不一样mysql不能重复
log_slave_updates=1 #开启之后从库会记录主库同步的binlog。
auto_increment_increment=2 #步进值,通常有n台主MySQL就填n。
auto_increment_offset=1 #起始值。通常填第n台主MySQL。
复制代码
192.168.7.4:
log-bin=mysql-bin #binlog文件的前缀,能够修改
binlog-format=ROW #选择row模式
server_id=4 #必须,不一样mysql不能重复
log_slave_updates=1 #开启之后从库会记录主库同步的binlog。
复制代码
分别重启192.168.7.二、192.168.7.三、192.168.7.4上的mysql:
service mysqld restart
复制代码
在192.168.7.2新建复制帐号:
CREATE USER user73 IDENTIFIED BY 'Node2018!';
GRANT ALL PRIVILEGES ON *.* TO 'user73'@'%' ;
FLUSH PRIVILEGES;
CREATE USER user74 IDENTIFIED BY 'Node2018!';
GRANT ALL PRIVILEGES ON *.* TO 'user74'@'%' ;
FLUSH PRIVILEGES;
复制代码
在192.168.7.3上配置复制的master信息:
CHANGE MASTER TO
MASTER_HOST='192.168.7.2',
MASTER_USER='user73',
MASTER_PASSWORD='Node2018!',
MASTER_LOG_FILE='mysql-bin.000002',
MASTER_LOG_POS=2340;
复制代码
在192.168.7.4上配置复制的master信息:
CHANGE MASTER TO
MASTER_HOST='192.168.7.2',
MASTER_USER='user74',
MASTER_PASSWORD='Node2018!',
MASTER_LOG_FILE='mysql-bin.000002',
MASTER_LOG_POS=2340;
复制代码
开启复制并查看复制状态:
START SLAVE;
SHOW SLAVE STATUS\G;
复制代码
7.2 和7.5 配置主主复制
配置node5的my.cnf:
log-bin=mysql-bin #binlog文件的前缀,能够修改
binlog-format=ROW #选择row模式
server_id=5 #必须,不一样mysql不能重复
log_slave_updates=1 #开启之后从库会记录主库同步的binlog。
auto_increment_increment=2 #步进值,通常有n台主MySQL就填n。
auto_increment_offset=2 #起始值。通常填第n台主MySQL。
复制代码
在7.2上建立一个7.5上能访问的帐号:
CREATE USER user75 IDENTIFIED BY 'Node2018!';
GRANT ALL PRIVILEGES ON *.* TO 'user75'@'%' ;
FLUSH PRIVILEGES;
复制代码
在7.5上建立一个7.2上能访问的帐号:
CREATE USER user72 IDENTIFIED BY 'Node2018!';
GRANT ALL PRIVILEGES ON *.* TO 'user72'@'%' ;
FLUSH PRIVILEGES;
复制代码
互相change master:
CHANGE MASTER TO
MASTER_HOST='192.168.7.5',
MASTER_USER='user72',
MASTER_PASSWORD='Node2018!',
MASTER_LOG_FILE='mysql-bin.000003',
MASTER_LOG_POS=154;
CHANGE MASTER TO
MASTER_HOST='192.168.7.2',
MASTER_USER='user75',
MASTER_PASSWORD='Node2018!',
MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=1761;
复制代码