mysql主从配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql主从配置相关的知识,希望对你有一定的参考价值。

一、环境介绍

操作系统:centos 6.5

数据库:mysql 5.1.73

二、配置步骤

PSlinux内核的操作系统中下载、安装mysql不属于本文重点,所以不多做介绍。

文中涉及到的配置文件路径皆以以上环境为准,操作系统和mysql版本不一致可能会导致路径也不同。

(master)配置:

1.在/var/lib/mysql/目录下建立***.log文件,该文件会在第三步中使用,主要是记录主从数据同步操作的日志文件,单机数据库服务可以选择开启或不开启,但主从配置环境是必须要开启该项的,因为服务器需要有一个记录主从同步操作的地方,这个日志文件就是。

2.使用chmod -R 777 /etc/my.cnf修改mysql配置文件的权限。

3.打开my.cnf文件,在 [mysqld] 下方添加

server-id=1 (随便命名,但保证在整个主从配置中是唯一的)

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

注:修改完my.cnf文件后一定要将该文件的权限修改为只读,否则mysql会给出警告,这个警告会导致你修改的配置不起作用,我在这被坑很久。可以使用 show variables like ‘log_bin’; 如果valueON说明配置正确。

4.使用命令 service mysqld start 启动mysql服务,并使用 mysql -u [user] -p 登陆mysql

5.使用命令 grant replication slave on *.* to ‘user’@’%’ identified by ‘password’;建立从服务器的帐号和密码。

6.使用命令 show master status;查看状态并记录FilePort字段中的值,在配置从服务器的时候需要该信息。

注:至此,主服务器配置过程已经结束,尽量不要再对主服务器进行任何操作,否则会导致prot发生变化,如果一定要进行操作,操作完毕后使用第6步的命令再次进行查看状态信息。

 

(slave)服务器配置:

1.参考主服务器配置中步骤123server_id是必须要有的,log-bin可有可无。配置完毕后使用命令service mysqld start启动服务。

2.登陆数据库服务器。

3.使用命令   change master to 

                 master_host=主服务器地址

        master_user=user,

          master_password=password,

        master_log_file=配置主服务器步骤6中的File

          master_log_pos=配置主服务器步骤6中的Port;

4.使用命令 start slave;启动从服务器。

注:如果启动失败使用命令 show variables like ‘server_id’;查看value是否为0,如果为0检查第1步的配置。

至此mysql的主从搭建就全部完成了,在此基础上我们可以通过对主从的配置读写权限修改实现读写分离。

三、测试

在主服务器中建立数据库表并新增记录,切换到从服务器中对该表进行查询,就可以看到mysql自从实现了主从数据的同步。

以上是关于mysql主从配置的主要内容,如果未能解决你的问题,请参考以下文章

Mysql主从配置,实现读写分离

mysql主从配置,读写分离

MySQL主从复制与读写分离配置及实操

Mysql主从配置,实现读写分离

centos 5.4中mysql主从同步配置方法

Mysql主从配置和跳过事务