一、原理
mysql主服务器把各种操作已二进制的格式记录到bin-log里,从连接主,并读取bin-log,实现数据同步
备份:mysqldump -uroot -p 123456 db >1.sql
导入:mysql -uroot -p 123456 db < 1.sql
二、准备工作
然后导出主的mysql库数据然后导入给db1
mysqldump -uroot -S /tmp/mysql2.sock mysql > 123.sql ;
mysql -uroot -S /tmp/mysql2.sock db1 < 123.sql
三、配置
1.配置Master主服务器
(1)找到配置文件my.cnf,启动二进制文件。
server-id=1 #给数据库服务的唯一标识,一般设置为ip的末尾号 log-bin=mysql-bin #开启二进制日志
(2)进入mysql
设置root密码:mysqladmin -uroot password ‘123456‘ 进入数据库 :mysql -uroot -p123456
(3)创建授权账户,给replication(复制)权限,从服务器IP为105
GRANT REPLICATION SLAVE ON *.* TO ‘repl‘on‘192.168.1.105‘ INDENTIFIED BY ‘123456‘
(4)查看日志
mysql>show master status; +-------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +-------------------+----------+--------------+------------------+ | master-bin.000001 | 1285 | | | +-------------------+----------+--------------+------------------+ 1 row in set (0.00 sec)
(5)重启mysql服务
2.配置Slave从服务器
(1)找到配置文件my.cnf,修改唯一ID
server-id=2
(2)重启mysql服务
(3)连接Master
change master to master_host=‘192.168.1.106‘, #master服务器的IP地址 master_port=3306, master_user=‘repl‘, master_password=‘123456‘, master_log_file=‘master-bin.000001‘, #master服务器产生的日志 master_log_pos=0;
(4)启动slave
start slave;
(5)检查从库状态
show slave status\G; slave_IO_running=yes
时间: 2024-10-12 21:57:39