MySQL主从复制

配置信息

mysql-5.7.22版本

主库IP地址 200.200.2.10

从库IP地址 200.200.2.11

MySQL二进制包部署

上传数据库源码二进制包并进行处理

1 rz
2 tar xf mysql-5.7.22-linux-glib2.12-x86_64.tar.gz -C /usr/src

制作软链接并在全局中导入变量

1 ln -s /usr/src/mysql-5.7.22.-linx-glib2.12-x86_64 /usr/local/mysql
2 echo "export PAHT=$PATH:/usr/local/mysql/bin/" >> /etc/profile
3 source /etc/profile

创建程序用户

1 useradd -M -s /sbin/nologin mysql

mysql初始话

1 mysqld --user=mysql --initialize --datadir=/usr/local/mysql/data
2 最后一行 A temporary password is generated for root@localhost: 初始话密码

准备启动脚本

 1 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
 2 chmod +x /etc/init.d/mysqld
启动服务器
3 可能会报错 4 解决方法 5 rm -rf /etc/my.con 6 vim /etc/my.con 7 cat /etc/my.con 8 [client] 9 port = 3306 10 socket = /tmp/mysql.sock 11 12 [mysqld] 13 server-id = 2 14 port = 3306 15 basedir = /usr/local/mysql 16 datadir = /usr/local/mysql/data
启动服务
17 /etc/init.d/mysqld start

登陆mysql并修改密码

1 mysql -uroot -p'初始密码'
2 set password=password('123456');

重新登陆MySQL数据库

mysql -uroot -p123456

MySQL数据库主从复制

主服务器

开启big-log日志

 1 vim/etc/my.conf
 2 cat/etc/my.conf
 3 
 4 [client]
 5 port = 3306
 6 socket = /tmp/mysql.sock
 7 
 8 [mysqld]
 9 server-id = 1                                            主从ID不能一致
10 log-bin=/usr/local/mysql/data/bin-log               开启二进制文件
11 port = 3306
12 basedir = /usr/local/mysql
13 datadir = /usr/local/mysql/data
重启服务
/etc/init.d/mysql restart

对从库进行授权

1 grant replication slave on *.* to 'repl'@'200.200.2.11' identified by '123456'';

查看二进制文件及节点位置

1 show master status

查看主库信息

1 show processlistG

从服务器

登陆数据库

1 mysql -uroot -p123456

从库链接主库

1 change master to master_host='200.200.2.10',master_user='repl',master_password='123456',master_log_file='bin-log.000001',master_log_pos=448;

开启从库

1 start slave

查看从库状态

1 show slave statusG
2 
3 成功
4 Slave_IO_Running        Yes        
5 Slave_SQL_Running       Yes
原文地址:https://www.cnblogs.com/bnre/p/14142029.html