`
gudao8192
  • 浏览: 95250 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Debian mysql同步

阅读更多

两台机器:

主:192.168.1.89

辅:192.168.1.188

 

1、

在192.168.1.89的mysql中执行:create database test;并创建表

CREATE TABLE `users` (
  `UserID` bigint(20) NOT NULL auto_increment,
  `Username` varchar(64) NOT NULL default '',
  `Password` varchar(64) NOT NULL default '',
  PRIMARY KEY  (`UserID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

编辑192.168.1.89上mysql配置文件/etc/mysql/my.cnf,在[mysqld] 下增加:

[mysqld]

server-id = 1                                          #唯一标志
log_bin = /var/log/mysql/mysql-bin.log  #同步数据库的日志文件

binlog_do_db = test                              #要同步的数据库

 

2、

重启192.168.1.89的 mysql

进入到mysql中执行命令:show master status; #查看主机状态,显示如下

+------------------+----------+---------------+------------------+
| File                                | Position | Binlog_Do_DB  | Binlog_Ignore_DB |
+------------------+----------+---------------+------------------+
| mysql-bin.000060          |      98    | test  |                              |
+------------------+----------+---------------+------------------+

 

注:辅库配置完同步后执行show slave status里的Master_Log_File,Read_Master_Log_Pos,Replicate_Do_DB和这里的值分别相等

 

3、

192.168.1.89的mysql中创建用户testsyn拥有replication slave权限

grant replication slave on *.* to "test"@"192.168.1.%" identified by 'test' with grant option;

 

4、

配置辅库192.168.1.188 的/etc/mysql/my.cnf文件,在[mysqld] 下增加:

server-id = 2  

master-host = 192.168.1.89 

master-user = test    

master-password = test   

master-port = 3306  

master-connect-retry = 5  #重试间隔时间   

replicate-do-db = test    #同步db 

 

5、

查看辅库状态,进入到mysql中,输入命令:show slave status\G; 显示结果如下

*************************** 1. row ***************************
           Slave_IO_State: Waiting for master to send event
                Master_Host: 192.168.1.89
                Master_User: test
                Master_Port: 3306
              Connect_Retry: 60
            Master_Log_File: mysql-bin.000060  
           Read_Master_Log_Pos: 98
             Relay_Log_File: mysqld-relay-bin.000005
              Relay_Log_Pos: 
      Relay_Master_Log_File: mysql-bin.000060
           Slave_IO_Running: Yes  #连接到主库,并读取主库的日志到本地,生成本地日志文件,为Yes则生效
          Slave_SQL_Running: Yes
#读取本地日志文件,并执行日志里的sql ,为Yes则生效
            Replicate_Do_DB: test
        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: 98
            Relay_Log_Space: 
            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

 

 

 

 

 


 

如果出现Slave_IO_State: Waiting for master to send event,说明两个数据库已经同步,辅库192.168.1.188会自动创建test数据库,如果没有出现,下面的方式可以帮你解决这个问题

在辅库上停止slave,执行命令stop slave;

执行命令:change master to master_host='192.168.1.89', master_user='test', master_password='test', master_log_file='mysql-bin.000060', master_log_pos=98;

这里的值应该和主库上执行show master status的值写成一致,不然就会出错哦。

执行start slave; 查看show slave status\G; 如果辅库上test没有创建,则需要执行下一步操作

6、

从主库上将库导出来,执行命令:

mysqldump --opt --master-data -uroot -ptest test > /home/test/test.dump

在辅库上创建test库create database test,

stop slave #先停止slave

将test.dump导入到test库中:mysql -uroot -test test < /home/test/test.dump

start slave

7、在主库中插入数据:
insert into users (username,password) values ('test1','test1');

辅库上的users表里也相应的有了数据

如果需要双向同步, 配置上是一样的,重复1-7的步骤就可以了。

 

分享到:
评论

相关推荐

    Debian系统下MySQL主从同步复制

    ### Debian系统下MySQL主从同步复制 在Debian系统中实现MySQL主从同步复制是一种常见的数据库高可用性和负载均衡策略。这种技术可以确保数据的安全性并提高系统的整体性能。接下来,我们将详细介绍如何在Debian环境...

    Ubuntu Debian(NGINX/PHP/MYSQL)快速配置工具LNMP云安装

    Ubuntu Debian(NGINX/PHP/MYSQL)快速配置工具LNMP云安装 Ubuntu Debian云安装基于debian apt-get 快速配置安装nginx php mysql等。LNMP云安装Ubuntu Debian(NGINX/PHP/MYSQL)快速配置工具经测试,整个过程约2-5分钟...

    vmware_debian_mysql镜像(数据库复制)安装与管理_精华20090426.rar

    本压缩包文件"vmware_debian_mysql镜像(数据库复制)安装与管理_精华20090426.rar"包含了关于在VMware环境下使用Debian操作系统安装和管理MySQL数据库复制的详细教程。 首先,让我们深入理解VMware Debian环境。...

    vmware_debian_mysql镜像(数据库复制)安装与管理_精华0426.pdf

    《vmware_debian_mysql镜像(数据库复制)安装与管理》 在IT行业中,数据库管理是至关重要的,尤其是在企业环境中,数据的安全性和可用性是业务持续运行的基础。本指南将详细阐述如何在vmware虚拟环境下,使用Debian...

    DebianLNMP一键安装包Debian6系统下的Nginx/PHP5.3/MySQL最快最新

    在Debian6系统下安装LNMP(Debian6 + Nginx1.2.x + PHP5.3.x + MySQL5.5.x 最省资源一键安装包)只需要上面两条命令。 DebianLNMP是一个用Linux Shell编写的可以为Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、...

    vmware_debian_mysql镜像(数据库复制)安装与管理_精华20090426.pdf

    本文档详细介绍了如何在VMware Debian环境中安装MySQL并设置数据库复制,以下是对主要内容的详细解读: 一、安装Debian 在安装Debian操作系统时,首先需要在VMware上进行必要的准备。这包括下载Debian的ISO镜像,...

    在Debian上用DRBD实现MySQL群集.pdf

    在Debian操作系统上使用DRBD(Distributed Replicated Block Device)实现MySQL群集是为了提高数据库服务的高可用性和数据安全性。DRBD是一种分布式存储技术,它可以实现在多个节点之间实时同步数据,从而在一台...

    DebianLNMP一键安装包Debian6系统下的Nginx PHP5.3 MySQL最快最新

    在Debian6系统下安装LNMP(Debian6 + Nginx1.2.x + PHP5.3.x + MySQL5.5.x 最省资源一键安装包)只需要上面两条命令。 DebianLNMP是一个用Linux Shell编写的可以为Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、...

    linux(debian)服务器配置笔记

    - 安装并配置 NTP 服务同步时间:`apt-get install ntpdate`,然后执行 `ntpdate ntp.sjtu.edu.cn`。 #### 系统别名配置 - 为了提高效率,可以在 `.bashrc` 文件中定义常用的别名,例如 `ll` 和 `lh` 分别代表 `...

    mysql for linux

    MySQL支持主从复制,可以在多个服务器间同步数据,实现高可用性和负载均衡。还有InnoDB Cluster等高级解决方案,提供更强大的集群功能。 13. **版本升级**: 当新的MySQL版本发布时,可以通过包管理器或手动方式...

    mysql数据在linux环境下各种安装

    sudo apt-get install mysql-server # Debian/Ubuntu sudo yum install mysql-server # CentOS/RHEL ``` 安装完成后,需初始化数据库并设置root用户的密码。 2. **主备安装** 主备模式用于数据备份和高可用性...

    Windows下mysql集群+linux下mysql集群

    - **数据同步**:利用 MySQL 的主从复制机制,确保数据在两个平台间同步。 - **监控与管理**:使用统一的监控工具(如 Nagios 或 Zabbix)监控整个集群的状态。 综上所述,无论是 Windows 还是 Linux 环境下 MySQL ...

    mysql-server_5.7.30-1ubuntu18.04_amd64.deb-bundle

    在高可用性和可扩展性方面,MySQL 5.7.30引入了Group Replication,这是一种高级的复制解决方案,提供了一致性更强的多主复制模式,能够在多个节点之间实现数据同步,增强了系统的容错能力和负载均衡。 安装"mysql-...

    mysql5.5版本含安装教程

    2. **Linux安装**:在Debian或Ubuntu系统中,可以使用`sudo apt-get install mysql-server`命令;在Red Hat或CentOS中,使用`yum install mysql-server`。安装过程中可能需要设置root用户的密码。 3. **macOS安装**...

    Debian linux学习笔记

    - `/var/log/mysqld.log`:MySQL 服务日志文件。 - `/var/log/samba`:Samba 服务日志文件。 - `/var/log/procmail.log`:邮件处理日志文件。 - **/lost+found**:当文件系统发生错误时用来存放找回的数据。 ###...

    msql-for-Linux.zip_MYSQL_linux mysql_mysql linux

    首先,MySQL的安装通常通过Linux的包管理器进行,例如在Debian或Ubuntu系统中使用`apt-get`,在Red Hat或CentOS中使用`yum`(或者更新的`dnf`)。安装过程涉及添加MySQL的官方仓库,更新系统包列表,然后执行安装...

    mysql_using.zip_MYSQL

    1. **安装MySQL**:在Linux/Unix环境下,通常通过包管理器如`apt`(Ubuntu/Debian)或`yum`(CentOS/RHEL)来安装MySQL服务器。安装过程包括添加软件仓库,更新包列表,然后执行安装命令。 2. **启动与停止MySQL...

    安装mysql的图形界面的客户端,高端

    Navicat提供了许多高级功能,如数据同步、数据传输、结构同步、备份、数据导入导出等,对于数据库管理员和开发者来说非常实用。它的界面友好,操作直观,大大简化了数据库管理工作。 总结一下,本文主要讲述了如何...

Global site tag (gtag.js) - Google Analytics