zoukankan      html  css  js  c++  java
  • linux的mysql主从

      数据库备份命令:mysqldymp -u username -p password -B databaseName > fileName.sql

      拷贝到从服务器:scp fileName.sql 从IP:/root    //IP:要拷贝到的目录

    一、主---从

        主服务器:

            1、停止数据库:service mysqld stop  /  systemctl stop mariadb(7版本以上)

            2、配置文件:vim /etc/my.cnf

                  定义为主服务器:server-id=1

                  用户二进制日志:log-bin=mysql-bin-master(名字随意起)

                  定义复制哪个库:binlog-do-db=数据库名

                  定义哪个库不可以复制:binlog-ignore-db=mysql(数据库名)

            3、重启数据库:service start mysqld / systemctl start mariadb

            4、登录数据库授权:创建用户给从服务器

                  grant    replication     slave on    *.*    to slave@从IP    identified by "1234"

                      (复制权限)     (所有表)                         (密码)

                  密码不符合要求,修改密码要求:

                      定义密码长度:set global validate_password_policy=0;

                      定义默认长度:set global validate_password_length=1;

            5、刷新权限:flush privileges;

            6、查看二进制:show master sttus;

            7、查看二进制事件:show binlog events G

        从服务器

            1、测试登录远程mysql:mysql -uuserName -ppassword -h 主IP

            2、导入:mysql -uuserName -ppassword <fileName.sql

            3、停止mysql

            4、修改配置文件:

                vim /etc/my.cnf

                server=2

            5、重启、进入mysql(root)

            6、指定从哪个master(主):

                change master to master_host='主IP';master_user="主名",master_password="主密";

            7、重启从:start  从名

            8、查看从的状态:show 从名 status G(以行形式查看)

        排错:

           如果遇到主从不同步,看一下主从bin-log的位置,然后再同步

             主---show master status G

             从---show 从名 status G

           强制同步

             在主服务器指定file和position

             在从服务器运行:

                  change master to master_log_file='file名';

                  master_log_pos=position值

             在执行前先停止从:stop 从名

             执行后启动从:start 从名

        排错思路:

             1、二进制日志有没有开启

             2、IPTABLES有没有开放端口

             3、对应的主机IP地址有没有写错

        sql线程出错:

             1、主从服务器数据库不统一:

                  出错后,数据少,可手动解决创建插入,再更新从的状态。

  • 相关阅读:
    RabbitMQ 工作图解
    RabbitMQ常用命令
    搭建 .Net RabbitMQ 开发环境
    不使用第三个变量交换两个变量的值
    WEB编程 入门简单 进阶难
    C# 字符串的长度问题
    C# 反射
    C# 拼接字符串的几种方式和性能
    ASP.NET MVC 教程汇总
    SSIS中循环遍历组件[Foreach Loop Container]
  • 原文地址:https://www.cnblogs.com/yuyangphpweibo/p/7882044.html
Copyright © 2011-2022 走看看