当前位置:Gxlcms > mysql > mysql主从设置_MySQL

mysql主从设置_MySQL

时间:2021-07-01 10:21:17 帮助过:37人阅读

准备工作:

master机和slave机的相关配置

1、修改master机器中mysql配置文件my.cnf,该文件在/etc目录下

在[mysqld]配置段添加如下字段

server-id=1

log-bin=log

binlog-do-db=repl //需要同步的数据库,如果没有本行,即表示同步所有的数据库 此参数可以重复设置,此参数 可能会出现问题,尽量不用,过滤数据 设置到从库

binlog-ignore-db=mysql //被忽略的数据库 同上 最好不用 过滤设置到从库

修改slave机中mysql配置文件

同样在[mysqld]字段下添加如下内容

server-id=2

master-host=192.168.1.222

master-user=repl

master-password=123456

master-port=3306

master-connect-retry=60

# replicate-ignore-db=mysql 忽略的数据库 同上

# master-connect-retry=60 如果从服务器发现主服务器断掉,重新连接的时间差(秒)

#replicate-do-db=repl //同步的数据库(需要备份的数据库名),不写本行 表示 同步所有数据库

#建议用下面两个参数

replicate-wild-do-table=db_name.%

replicate-wild-ignore-table=mysql.%

然后重启slave机的mysql

-------------------------------------------------------------------------------------------------

1、登录mysql 首先 查看 数据库的版本

>select version();

2、检查主库 和 从库的 server_id

>show global variables like 'server_id';

3、查看主库的二进制文件是否开启

>show global variables like 'log_bin';

若没有开启,那么需要重启数据库的:

(1)在my.cnf参数文件中[mysqld]中添加

log-bin = mysql-bin

(2)重启MySQL数据库。

4、检查到从库的网络及端口是否可达

#netstat -tnlp|grep mysqld

#telnet 192.168.230.71 3306

5、在主库创建同步帐号并授权 replication

>create user 'repl'@'host' identified by 'password';

>grant replication slave,replication client on *.* to 'repl'@'host';

6、再从库中测试是否可以使用repl用户登录

#mysql -urepl -ppassword -hhost -P3306

7、记录主库master上当前二进制日志名和偏移量

主要是用于slave中指定开始恢复的位置。

>show master status\G

8、备份数据库

启动主从复制功能

slave start;

查看主从信息

show slave status\G;

如果打印的信息中slave_IO_Running:yes和Slave_SQL_Runnning:yes 则表示配置成功

人气教程排行