step by step配置mysql复制的具体方法

 更新时间:2013年09月26日 15:22:29   作者:  
每个服务器必须有唯一的server-id,默认为1,为了防止冲突,一般建议设置为IP地址的后几位,本例设置为12,通过修改主库的my.cnf文件实现

采用全库复制的方案,方便管理mysql 5.5 + rhel5.8
10.4.11.12 master
10.4.11.13 slave
---Master端设置
1,    创建复制帐号,需要复制和slave权限
mysql> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.*  TO repl@'10.4.11.12 IDENTIFIED BY 'mysql;
Query OK, 0 rows affected (0.00 sec)
2,    修改参数,并重启生效
#skip-networking
server-id       = 12
# Uncomment the following if you want to log updates
log-bin=mysql-bin
重启mysql
service mysql restart

---slave端的设置
3,slave库的参数设置,同样需要重启生效
vi /etc/my.cnf
#skip-networking
server-id       = 13
# Uncomment the following if you want to log updates
log-bin=mysql-relay-bin

4,master导出数据到slave库
如果数据库使用的是MyISAM表类型的话,可按如下方式操作:

shell> mysqldump --all-databases --master-data=1 > data.sql
如果数据库使用的是InnoDB表类型的话,则应该使用single-transcation:

shell> mysqldump --all-databases --single-transaction --master-data=1 > data.sql

slave端导入数据
mysql < data.sql

 
5,查看master的配置
mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |      107 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

6,启动复制,slave端运行如下命令

复制代码 代码如下:

--配置复制的指向
CHANGE MASTER TO MASTER_HOST='10.4.11.12',
 MASTER_USER='repl',
 MASTER_PASSWORD='mysql',
 MASTER_LOG_FILE='mysql-bin.000001',
 MASTER_LOG_POS=0;

--开始复制
mysql> start slave ;
Query OK, 0 rows affected (0.00 sec)

7,查看复制的状态,注意slave_io_state, slave_io_Running,和slave_sql_running三列的值

mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.16.251.11
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000001
          Read_Master_Log_Pos: 1278
               Relay_Log_File: linux2-relay-bin.000002
                Relay_Log_Pos: 503
        Relay_Master_Log_File: mysql-bin.000001
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB:
……..

8,测试复制情况
Master端新建一个表
Slave查看是否复制完成

相关文章

  • mysql中datetime类型设置默认值方法

    mysql中datetime类型设置默认值方法

    下面小编就为大家分享一篇mysql中datetime类型设置默认值方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • mysql 5.0.45 (修改)拒绝服务漏洞

    mysql 5.0.45 (修改)拒绝服务漏洞

    mysql 5.0.45 (修改)拒绝服务漏洞的方法,追求安全的朋友可以参考下。
    2010-07-07
  • Linux中查看MySQL服务是否开启方式

    Linux中查看MySQL服务是否开启方式

    这篇文章主要介绍了Linux中查看MySQL服务是否开启方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • MySql中删除数据表的方法详解

    MySql中删除数据表的方法详解

    这篇文章主要介绍了MySql中删除数据表的方法的相关资料,作者讲解的十分细致全面,这里推荐给大家,需要的朋友可以参考下
    2022-08-08
  • MySQL视图原理与基本操作示例

    MySQL视图原理与基本操作示例

    这篇文章主要介绍了MySQL视图原理与基本操作,简单描述了mysql视图的概念、功能并结合实例形式分析了mysql视图的创建、查询、修改、删除等相关操作技巧,需要的朋友可以参考下
    2018-03-03
  • MySQL query_cache_type 参数与使用详解

    MySQL query_cache_type 参数与使用详解

    这篇文章主要介绍了MySQL query_cache_type参数介绍,需要的朋友可以参考下
    2021-07-07
  • 详解Mysql基础语法的使用

    详解Mysql基础语法的使用

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。这篇文章主要介绍了Mysql基础语法的使用,需要的朋友可以参考下
    2018-07-07
  • MySql无法连接本地地址localhost问题

    MySql无法连接本地地址localhost问题

    这篇文章主要介绍了MySql无法连接本地地址localhost问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 如何用word vb宏来生成sql

    如何用word vb宏来生成sql

    本篇文章是对利用word vb宏来生成sql的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 简单聊一聊SQL中的union和union all

    简单聊一聊SQL中的union和union all

    在写SQL的时候,偶尔会用到两个表的数据结合在一起返回的,就需要用到UNION 和 UNION ALL,这篇文章主要给大家介绍了关于SQL中union和union all的相关资料,需要的朋友可以参考下
    2023-02-02

最新评论