linux mysql Replication环境搭建

准备两台机器,每台电脑上都要有mysql

然后就开始搭建Replication环境吧

在主服务器上,执行如下操作:

主服务器IP:192.168.170.136

从服务器IP:192.168.170.138

1,在主服务器上创建一个备份用户(*.*就是备份所有用户下的所有表)

mysql>  GRANT REPLICATION SLAVE,reload,super ON *.* TO slave@192.168.170.138 IDENTIFIED BY 'unixhot';
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye

2,在主服务器上修改配置文件

[root@localhost sw]# vim /etc/my.cnf
server-id=1
log-bin=mysql-binlog
expire_logs_day=10
max_binlog_size=500M

server-id  --->为服务器编号,主为1

log-bin     --->日志文件

expire_logs_day  ---->设置日志的保存时间

max_binlog_size  --->设置每个日志的大小

3,重新启动服务器

/etc/init.d/mysqld restart


4,登录主数据库

[root@localhost sw]# mysql -uroot -p123456

mysql> show master status;
+---------------------+----------+--------------+------------------+
| File                | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------------+----------+--------------+------------------+
| mysql-binlog.000001 |       98 |              |                  | 
+---------------------+----------+--------------+------------------+
1 row in set (0.00 sec)


mysql-binlog.000001:日志名称

98:日志的当前位置

 

然后切换到从服务器:

做如下操作

1,修改配置文件

root@localhost ~]# vim /etc/my.cnf
server-id=2
slave-skip-errors=all
relay-log=mysql-relay-bin


server-id:当前数据库的编号,从2开始

server-skip-errors:跳过所有错误的sql

relay-log:从端读取主端的日志信息

 

2,登录从数据库

mysql>  CHANGE MASTER TO
    ->       MASTER_HOST='192.168.170.136',
    ->       MASTER_USER='slave',
    ->      MASTER_PASSWORD='unixhot',
    ->       MASTER_LOG_FILE='mysql-binlog.000001',
    ->  MASTER_LOG_POS=98;

master_host:主数据库的IP

master_user:主数据库中创建的用户

master_password:该用户的密码

master_log_file:从那个日志文件开始读取

master_log_pos:从那个位置开始读取

 

3,启动该slave


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


 


 

OK,去主数据库中添加一个表试试吧,看看在从数据库中有没有这个表

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值