您的位置:首页 > 数据库 > MySQL

mysql主从配置

2016-02-26 08:54 281 查看
一、环境介绍

操作系统:centos 6.5

数据库:mysql 5.1.73

二、配置步骤

PS:linux内核的操作系统中下载、安装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’; 如果value为ON说明配置正确。

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

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

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

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

从(slave)服务器配置:

1.参考主服务器配置中步骤1、2、3,server_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自从实现了主从数据的同步。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: