zoukankan      html  css  js  c++  java
  • Mysql的安装和主从复制

    安装mysql服务

    步骤一:首先下载mysql的yum源配置 ,下载mysql的yum源

    wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

    步骤二:安装mysql的yum源

    yum -y install mysql57-community-release-el7-11.noarch.rpm

    步骤三:yum方式安装mysql

    yum -y install mysql-server

    步骤四:使用mysql , 

    1. 启动mysql
    2. 命令行进入mysql ,查询临时密码
      [root@server01 ~]# cat /var/log/mysqld.log| grep password
      2020-08-04T08:11:17.928665Z 1 [Note] A temporary password is generated for root@localhost: Es*QZhbOs0%(

      使用临时密码进入命令行

      mysql  -uroot -p    敲回车,输入临时密码

    3. 修改密码root密码 ,5.7要求必须修改密码 ,不修改所有命令不可以使用
      ALTER USER USER() IDENTIFIED BY '123456Admin@123';    #密码必须复杂点,否则不能修改
      mysql -uroot -pEs*QZhbOs0%;

      #给其他机器授权能够访问
      mysql
      grant all privileges on *.* to 'root'@'%' identified by '123456Admin@123' with grant option;
      flush privileges;

    mysql的主从复制配置

    主机配置如下:

    步骤一:修改配置文件实现日志归档功能

    vi /etc/my.cnf

                  添加两个参数

    log-bin=mybak   开启日志归档功能,日志文件名为mybak
    server-id =10  集群中的唯一标识,一般使用的是ip地址的最后一位。因为主机的ip为192.168.11.100.
    lower_case_table_names = 1  不区分大小写
    log-slave-updates=1   让备机有操作日志的功能

    从机配置如下:

    步骤二:如果是从主机直接克隆过来的mysql,需要删除uuid文件 rm -rf /var/lib/mysql/auto.cnf

                     从机修改两行就可以

    server-id =11  集群中的唯一标识,一般使用的是ip地址的最后一位。因为主机的ip为192.168.11.100.
    lower_case_table_names = 1  不区分大小写

    步骤三:都重新启动mysql ,service mysqld restart

                    查看主机状态

                    

    步骤四:开始同步主机数据 ,下面的命令需要在从机上执行

    change master to master_host='192.168.65.12',master_user='root',master_password='Es*QZhbOs0%',master_log_file='mybak.000008',master_log_pos=458;
    
    master_host 主机的ip地址     #192.168.65.10
    master_user 用户名          #数据库用户名
    master_password 密码        #数据库密码
    master_log_file 主机的日志文件    #对应File列
    master_log_pos 日志文件的位置     #对应Position列

             然后同步数据

            

          下面的命令是查看mysql当前的进程

                    show   slave   statusG

         34 #修改在配置文件中配置只读和修改默认存储引擎,重新启动mysql。
         35 default-storage-engine=MYISAM
         36 read_only=on
         37 super_read_only=on

    效果: 从表不能增删改操作 ,只能读写操作

     

    注:如果主从发生以下故障,则:

    mysql> show slave statusG
    Slave_IO_Running: Yes
    Slave_SQL_Running: No
    ....
    Seconds_Behind_Master:NULL
    
    出现上述情况说明数据主从发生故障。
    
    问题原因:
    
    1、可能是主库的表,在从库中没有找到。
    
    解决方法:
    
    1、先停止同步:mysql>stop slave;
    
    2、使用命令:mysql>set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
    
    3、开启同步:mysql>start slave;
    
    4、使用命令:mysql>show slave statusG,查看Slave_SQL_Running的值,如果不为Yes,则重复上述3步,直到为Yes

     mysql的主从复制(双主双从)

    1) 步骤一:将之前的主从机器克隆一份

    2) 步骤二:修改配置文件

    在master1和master2上加入下面的内容

    log-slave-updates=1   #此配置只在从机做主机(在主机上)的时候需要开启
    加入之后,两台主机也要同步数据,设置互为备份(
    change master to master_host='192.168.65.12',master_user='root',master_password='Es*QZhbOs0%',master_log_file='mybak.000008',master_log_pos=154;

    3) 步骤三:测试(要以上重复步骤四

    1. 在master1上写,master2,salve1,slave2可以查询
    2. 在master上写,master1,slave1,slave2可以查询

    4) 步骤三:通过keepalived实现双主双从的高可用集群

     

  • 相关阅读:
    laravel执行migrate出现1071 字符串类型过长 异常
    Laravel关闭CSRF功能的两种方法
    webstome10破解及汉化
    spring-retry简单demo(附完整代码)
    git提交报错SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
    tomcat8的session共享实现方案
    idea下载安装指南
    《Maven实战》(许晓斌)导读(读书笔记&第二次读后感)
    spring cloud config搭建说明例子(四)-补充配置文件
    spring cloud config搭建说明例子(三)-添加actuator
  • 原文地址:https://www.cnblogs.com/cwshuo/p/13434702.html
Copyright © 2011-2022 走看看