基于MySQL Master Slave同步配置的操作详解

2023年 4月 22日 74.8k 0

环境: PC:ubuntu 10.10 192.168.1.112(master) 192.168.10.245(slave) MySQL : 5.1.49-1ubuntu8.1-log 在master中已经存在数据库test 首先修改mysql配置文件:/etc/mysql/my.cnf [master] #author:zhxia 复制代码 代码如

环境:PC:ubuntu 10.10  192.168.1.112(master) 192.168.10.245(slave) MySQL : 5.1.49-1ubuntu8.1-log在master中已经存在数据库test 首先修改mysql配置文件:/etc/mysql/my.cnf[master]#author:zhxia 复制代码 代码如下: #master 同步设置 server-id               = 1 log_bin                 = /var/log/mysql/mysql-test-bin.log expire_logs_days        = 10 max_binlog_size         = 100M  binlog_format           =mixed[slave]#author:zhxia 复制代码 代码如下:server-id               = 2 replicate-do-db=test replicate-do-db=blog log_bin                 = /var/log/mysql/mysql-bin.log relay_log               =/var/log/mysql/mysql-relay-bin.log expire_logs_days        = 10 max_binlog_size         = 100M #binlog_do_db           = test #binlog_ignore_db       = include_database_name binlog_format           = mixed slave-net-timeout=6012 master-connect-retry=10接着在master上创建备份帐号复制代码 代码如下:grant replication slave,replication client on *.* to 'slave'@'192.168.10.245' identified by '123456'; 将master中的数据库 导入到slave中,先锁表,禁止写入操作flush tables with read lock; 先从master导出:mysqldump -uroot -p test > /tmp/test.sql再导入到slave: mysql -uroot -p test < /tmp/test.sql ,记得需要先建库test进入master上的mysql,查看master状态#author:zhxia 复制代码 代码如下:mysql> show master status; +-----------------------+----------+--------------+------------------+ | File                  | Position | Binlog_Do_DB | Binlog_Ignore_DB | +-----------------------+----------+--------------+------------------+ | mysql-test-bin.000022 |      624 |              |                  | +-----------------------+----------+--------------+------------------+ 1 row in set (0.02 sec)进入slave上的Mysql#author:zhxia 复制代码 代码如下:change master to  master_host='192.168.1.112', master_user='slave', master_password='123456', master_log_file='mysql-test-bin.000022', master_log_pos=106;然后启动salve,并查看状态:  #author:zhxia复制代码 代码如下:start slave; mysql> show slave status\G; *************************** 1. row ***************************                Slave_IO_State: Waiting for master to send event                   Master_Host: 192.168.1.112                   Master_User: slave                   Master_Port: 3306                 Connect_Retry: 60               Master_Log_File: mysql-test-bin.000022           Read_Master_Log_Pos: 624                Relay_Log_File: mysql-relay-bin.000005                 Relay_Log_Pos: 533         Relay_Master_Log_File: mysql-test-bin.000022              Slave_IO_Running: Yes             Slave_SQL_Running: Yes               Replicate_Do_DB: test,blog           Replicate_Ignore_DB:             Replicate_Do_Table:         Replicate_Ignore_Table:        Replicate_Wild_Do_Table:    Replicate_Wild_Ignore_Table:                     Last_Errno: 0                    Last_Error:                   Skip_Counter: 0           Exec_Master_Log_Pos: 624               Relay_Log_Space: 688               Until_Condition: None                Until_Log_File:                  Until_Log_Pos: 0            Master_SSL_Allowed: No            Master_SSL_CA_File:             Master_SSL_CA_Path:                Master_SSL_Cert:              Master_SSL_Cipher:                 Master_SSL_Key:          Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No                 Last_IO_Errno: 0                 Last_IO_Error:                 Last_SQL_Errno: 0                Last_SQL_Error:  1 row in set (0.00 sec) ERROR:  No query specified最后将master上的表解锁 unlock tables;

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论