ホームページ  >  記事  >  データベース  >  mysql复制功能――“master-slave”结构_MySQL

mysql复制功能――“master-slave”结构_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:32:15892ブラウズ

bitsCN.com

mysql复制功能——“master-slave”结构

一、配置主服务器

1.my.ini中添加内容

mysql复制功能――“master-slave”结构_MySQL

2.创建“复制权限”的账号

 创建账号

mysql复制功能――“master-slave”结构_MySQL

mysql复制功能――“master-slave”结构_MySQL

 

 给创建的账号授予“待复制数据库”上所有的操作权限

mysql复制功能――“master-slave”结构_MySQL

 查看所有用户

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

mysql复制功能――“master-slave”结构_MySQL

查看用户权限

mysql复制功能――“master-slave”结构_MySQL

3.重启mysql服务

二、配置从服务器

1.my.ini中添加内容

 mysql复制功能――“master-slave”结构_MySQL

 注:从库my.ini的配置中,Mysql5.5版本以上不再支持master的用法,比如5.1

 中可用的(master-user = repl;master-password = repl;master-port = 3307),

 如果在mysql5.5版本以上中使用该语法会导致,mysql服务无法启动。

  2.重启mysql服务器

  3.开启从库复制功能

 a)关闭从库复制功能

stop slave;

mysql复制功能――“master-slave”结构_MySQL

 b)设置主库连接串

 

change master to
master_host="10.0.0.10",
master_port=3306,
master_user="slave1",
master_password="feng"
;

 

mysql复制功能――“master-slave”结构_MySQL

 注:出现警告是没关系的,只是密码是明文等提示。

  此处还可指明“主库”二进制文件名和位置

 eg:mysql复制功能――“master-slave”结构_MySQL

  查看主库信息可用以下命令完成:

 mysql复制功能――“master-slave”结构_MySQL

c)打开从库复制功能

start slave;

mysql复制功能――“master-slave”结构_MySQL

 d)查看从库状态

mysql复制功能――“master-slave”结构_MySQL

三、测试

 1.连接到主库上,插入一行数据

mysql复制功能――“master-slave”结构_MySQL

mysql复制功能――“master-slave”结构_MySQL

2.在从库上执行查询

mysql复制功能――“master-slave”结构_MySQL

mysql复制功能――“master-slave”结构_MySQL

四、说明

1.版本问题

从库的版本>=主库的版本

  本实验中:主库

 mysql复制功能――“master-slave”结构_MySQL

从库

 mysql复制功能――“master-slave”结构_MySQL

 2.第一次配置从库时,从库中不应该存在“待复制的数据库名”

第一次start slave时,会在从库上创建该数据库,如果已经存在会出现无法创建数据库的错误

 mysql复制功能――“master-slave”结构_MySQL

此时,从库上的SQL线程无法启动

 mysql复制功能――“master-slave”结构_MySQL


bitsCN.com
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。