视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
mysql5.5建立主从复制(setupmaster-slavereplication)_MySQL
2020-11-09 18:31:31 责编:小采
文档


bitsCN.com

mysql5.5建立主从复制(set up master-slave replication)

1.注意事项:

(1)主从服务器版本要一致

(2)要修改root密码,切不可用初始密码 ( 此与主从复制无关,为数据库安全考虑耳 ); www.bitsCN.com

2.配置主服务器master:

[sql]

[mysqld]

log-bin=mysql-bin //必须启用二进制日志

server-id=1 //必须是服务器唯一id,默认是0,

重启主服务器

3.配置从服务器slave:

[plain]

[mysqld]

#log-bin=mysql-bin // 从服务器的二进制日志非必须启用,然而如果该从服务器要作为其他服务器的主服务器时则需要启用;若启用二进制日志,可以用作数据备份和功能恢复

server-id=2 //必须服务器唯一ID, 默认是0,不要与服务器一样

重启从服务器

4.在主服务器给从服务器分配一个具有replication slave权限的帐户

[sql]

mysql> CREATE USER 'repl'@'192.168.1.103' IDENTIFIED BY 'slavepass';

mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.1.103';

5.获得复制主服务器二进制日志的坐标( Obtaining the Replication Master Binary Log Coordinates )

(1).在主服务器命令行启用一个session连接mysql,刷新所有的表和并阻止写入语句:

[sql]

mysql> FLUSH TABLES WITH READ LOCK; ( 要解锁退出该会话即可 )

(2).在主服务器通过命令行新开一个session连接mysql,使用语句SHOW MASTE STATUS判断出当前二进制日志的文件名和位置:

[sql]

mysql > SHOW MASTER STATUS;

+------------------+----------+--------------+------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000003 | 107 | | |

+------------------+----------+--------------+------------------+

记下二进制文件名:mysql-bin.000003和位置107

6.使用mysqldump创建一个数据快照

(1).确定主服务器读写被锁,见上一步5.1

(2).使用mysqldump导出所有需要复制的数据库或者选择其中一个,例如:

[sql]

shell> mysqldump --all-databases --lock-all-tables >dbdump.db

(3).解锁之前锁定的表:

[sql]

mysql> UNLOCK TABLES;

(另:关闭连接也可以解锁)

7.交直一步创建的快照导入从服务器:

(1).把dbdump.db(即上一步从主服务器导出的文件)拷贝到从服务器

(2).连接从服务器并执行stop slave;

[sql]

mysql > stop slave;

(3).导入文件

[sql]

mysql > create databases 'dataname';

mysql > use 'dataname';

mysql > source dbdump.db;

8.配置复制的主服务器的坐标 

[sql]

mysql> CHANGE MASTER TO

-> MASTER_HOST='192.168.1.103',

-> MASTER_USER='repl',

-> MASTER_PASSWORD='slavepass',

-> MASTER_LOG_FILE='mysql-bin.000003',

注:执行该语句之前必须确保没有slave线程运行,否则报错

9.启动slave线程:

[sql]

mysql > start slave;

10.在主服务器中插入一条数据,查看从服务器是否有了.

bitsCN.com

下载本文
显示全文
专题