zoukankan      html  css  js  c++  java
  • mysql主从同步

    1.实验环境:

    2台centos7.2系统,ip分别为192.168.2.40 192.168.2.41
    防火墙和selinux均关闭 同步时间

    2.实验步骤:
    192.168.2.40上操作:

    [root@mysql-master ~]# yum -y install mariadb mariadb-server
    [root@mysql-master ~]# vi /etc/my.cnf 添加下面内容:
    [mysqld]
    log-bin=mysql-bin
    server-id=1

    启动服务:
    [root@mysql-master ~]# systemctl start mariadb

    更改数据库密码:
    [root@mysql-master ~]# mysql_secure_installation

    进入数据库:
    [root@mysql-master ~]# mysql -uroot -p

    增加一个账号专门用于同步:
    MariaDB [(none)]> grant replication slave on *.* to 'backup'@'192.168.2.41' identified by 'backup'; flush privileges;

    显示master状态:
    MariaDB [(none)]> show master status;
    +------------------+----------+--------------+------------------+
    | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000003 | 1703 | | |
    +------------------+----------+--------------+------------------+
    记录下File和Position然后在41上面设置从40同步


    192.168.2.41上操作:
    [root@mysql-agent ~]# yum -y install mariadb mariadb-server
    [root@mysql-agent ~]# vi /etc/my.cnf 添加下面内容:
    [mysqld]
    log-bin=mysql-bin
    server-id=10 (此处要设置的跟40不同)

    启动服务:
    [root@mysql-master ~]# systemctl start mariadb

    更改数据库密码:
    [root@mysql-master ~]# mysql_secure_installation

    进入数据库:
    [root@mysql-master ~]# mysql -uroot -p

    执行:
    MariaDB [(none)]> change master to master_host='192.168.2.41',master_user='backup',master_password='backup',master_log_file='mysqlbin.000003',master_log_pos=1703;
    注意:1703对应上面在40上面记下的Position,mysql-bin.000003对应40上面记录的File

    启动复制线程:
    MariaDB [(none)]> START SLAVE;

    执行成功后,输入命令显示从库状态:
    MariaDB [(none)]> show slave status G;
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    上面的两行均为yes表示已同步

    增加一个账号专门用于同步:
    MariaDB [(none)]> grant replication slave on *.* to 'backup'@'192.168.2.40' identified by 'backup'; flush privileges;

    显示41做为主库时的状态:
    MariaDB [(none)]> show master status;
    +------------------+----------+--------------+------------------+
    | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000003 | 1703 | | |
    +------------------+----------+--------------+------------------+


    192.168.2.40数据库上操作:

    MariaDB [(none)]> change master to master_host='192.168.2.41',master_user='backup',master_password='backup',master_log_file='mysql-bin.000003',master_log_pos=1703;

    MariaDB [(none)]> START SLAVE;

    MariaDB [(none)]> show slave status G;
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    上面的两行均为yes表示已同步


    验证:分别在两台数据库里建库、建表,看看另一台是否会自动生成。

  • 相关阅读:
    Oracle EBS OM 发放订单
    Oracle EBS 创建 RMA
    Oracle EBS OM 保留订单
    Oracle EBS OM 删除订单行
    Oracle EBS OM 登记订单
    [转]Form中控制Tab画布不同标签间切换的方法
    [转]Form Builder:app_field.clear_dependent_fields和APP_FIELD.set_dependent_field的用法
    [整理]:oracle spool 用法
    ORA-20000:ORU-10027:buffer overflow,limit of 2000 bytes.
    [Form Builder]:CREATE_GROUP Built-in
  • 原文地址:https://www.cnblogs.com/menkeyi/p/8628773.html
Copyright © 2011-2022 走看看