mysql主从复制

好像好久没写博客 ,今天闲来无事,自己动手配置了一下mysql主从复制 ,顺便记一下,方便以后的使用。


1.主服务器配置

第一步:

首先需要配置mysql主从服务器可以连通,

grant all on *.* to user@192.168.241.130 identified by "456";

第二步:

编辑 /etc文件夹下的my.conf

server-id=107

log-bin=/var/lib/mysql/mysql-bin

第三步:

重启mysql服务器  service mysql restart

第四步:

设置读锁 

flush tables with read lock;

第五步:

记下偏移量与binlog日志文件名

show master status;

第六步:

备份数据库 

mysqldump -uroot -p123 test >/use/local/test.sql

第七步:

解锁

unlock tables;


2.从服务器配置

第一步:

 此处要注意logfile的名称和position的值,其余host、user和password为主数据库设置的账号和密码

mysql> stop slave;
Query OK, 0 rows affected (0.00 sec)

mysql> change master to 
   -> master_host='192.168.0.107',
   -> master_user='repl',
   -> master_password='repl',
   -> master_log_file='mysql-bin.000001',
   -> master_log_pos=713;

mysql> start slave;
Query OK, 0 rows affected (0.00 sec)

mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.0.107
Master_User: repl
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 1079
Relay_Log_File: mysqld-relay-bin.000004
Relay_Log_Pos: 251
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: 
Replicate_Ignore_DB: 
Replicate_Do_Table: 
Replicate_Ignore_Table: 
Replicate_Wild_Do_Table: 
Replicate_Wild_Ignore_Table: 
Last_Errno: 0
Last_Error: 
Skip_Counter: 0
Exec_Master_Log_Pos: 1079
Relay_Log_Space: 407
Until_Condition: None
Until_Log_File: 
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File: 
Master_SSL_CA_Path: 
Master_SSL_Cert: 
Master_SSL_Cipher: 
Master_SSL_Key: 
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error: 
Last_SQL_Errno: 0
Last_SQL_Error: 
1 row in set (0.00 sec)

ERROR: 
No query specified

复制代码

在这里主要是看:

  Slave_IO_Running=Yes
  Slave_SQL_Running=Yes

如果出现Slave_IO_Running: No或Slave_SQL_Running: NO,需要重做2.3、对从数据库进行相应设置

3.测试

3.1、在主数据库:192.168.0.107上添加新数据

insert into `menber` (`name`) values('李八');insert into `menber` (`name`) values('苍井空');

3.2从数据库:192.168.0.109上查看数据库

复制代码
mysql> select * from menber;
+-----------+----+
| name      | id |
+-----------+----+
| zhangsan  |  1 |
| lisi      |  2 |
| 王五    |  3 |
| 李八    |  4 |
| 苍井空 |  5 |
+-----------+----+
5 rows in set (0.02 sec)
复制代码

  此时数据已经成功复制到slave从数据库192.168.0.109上。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值