完全屬於我自己的Blog,運行在我的路由器H218N上.記錄著我想記錄的文字.

标签 数据库 下的文章

04月 24

数据库主从服务器搭建(克隆Master与克隆Slave)

环境设定

Master服务器资料

IP:192.168.1.100
PORT:3306
用户名:root
密码:root
Slave用户:repl_user
Slave密码:root

Slave服务器资料

参考数据库主从服务器搭建(一主一从)")

克隆Master

以下操作在Master服务器上进行

要克隆Master,先要把Master的数据备份出来,为避免备份时数据有所变化,先把还在缓冲区没写入表中的数据写到表中,并锁定服务器,不让再进行写操作.

FLUSH TABLES WITH READ LOCK;

备份服务器中所有数据库到sql文件,注意!!锁定表后,不能退出MySQL!!一旦退出MySQL,会自动解锁!

mysqldump -h192.168.1.100 --port=3306 -uroot -proot --all-databases > master_all.sql

备份单个数据库(如inti)时可用

 mysqldump -h192.168.1.100 --port=3306 -uroot -proot --databases init > init.sql

获取当前二进制日志的文件名和位置

SHOW MASTER STATUS;
+-------------------+----------+--------------+------------------+
| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+--------------+------------------+
| master-bin.000003 |     2670 |              |                  |
+-------------------+----------+--------------+------------------+

现在可以解除数据服务器的锁定

UNLOCK TABLES;

阅读全文 >>

04月 19

数据库主从服务器搭建(一主一从)

修改配置文件

修改MySQL配置文件如下
一般linux环境下配置文件路径是

/etc/mysql/my.cnf

修改配置文件前,先把MySQL服务关停,

# service mysql stop

在主服务器的配置文件添加一下内容

log-bin         = master-bin
log-bin-index   = master-bin.index
server-id       = 1
log-slave-updates 
slave-skip-errors #是跳过错误,继续执行复制操作

log-slave-updates 选项含义请参考数据库主从服务器搭建(克隆Master与克隆Slave)后续补充部分

!!注意!!
必须注释掉这个配置项或者添加各服务器的IP

bind-address           = 127.0.0.1

修改配置完毕后,启动MySQL服务,登录并进行以下操作

master > CREATE USER repl_user ;/*! repl_user是从服务器登录到主服务器时的用户名*/
master > GRANT REPLICATION SLAVE ON *.* TO repl_user IDENTIFIED BY 'password';/*! 为从服务器用户设置登录允许登录域及登录密码 password */

在从服务器的配置文件添加一下内容

log-bin         = master-bin
log-bin-index   = master-bin.index
server-id       = 2
relay-log-index = slave-relay-bin.index
relay-log       = slave-relay-bin
log-slave-updates #log-bin 用于启动数据库的更新日记,当针对启动这个选项的数据库本身进行数据跟新时更新操作将被记录。log-slave-updates 告诉Slave在二进制记录中记录从主数据库同步到的更新数据。如果只启动log-bin 而没有启动log-slave-updates则Slave只记录针对自己数据库操作的更新。
slave-skip-errors #是跳过错误,继续执行复制操作

阅读全文 >>