• mysql5.6+主从集的版本号(mysql5.5主机和从机载带后,5.5在设置有一定的差距)


    怎么安装mysql数据库。这里不说了,仅仅说它的主从复制,过程例如以下

    在进行主从设置之前 

    首先确保mysql主从server之间的数据库port防火墙互相打开,

    尽量确保主从数据库账户一致性(主从切换使用)。否则将操作失败,

    其次是确保mysql账户对mysql数据库文件夹有“可读写”权限非“可写”权限,

    为了确保不出意外,最好删除mysql之前陈旧的mysql-bin、mysql日志。然后重新启动mysql

    在主server上新建一个new_test数据库并为其建一个test表,然后导出导入到从server上(測试主从使用)server上可替换成现有的数据库进行操作(我这里主从上各建立一个同样账户和password,同样的port配置,为了主从切换,方便測试,记得防火墙port和日志位置读写权限一定要有的)


    1、主从server分别作下面操作
      1.1、版本号一致
      1.2、初始化表,并在后台启动mysql
      1.3、改动root的password

    2、改动主servermaster:
    #vi /etc/my.cnf

    [mysqld]
    log-bin=mysql-bin   //[必须]启用二进制日志
    server-id=1       //[必须]默认是1。一般取IP最后一段

    port=1223
    bing-address=0.0.0.0

    log-bin=mysql-bin.log(必须,数据库日志文件,主从必须)
    binlog-do-db =new_test (要记录的数据库,多个可换行多次设置)
    replicate-do-db =new_test (要复制的数据库。多个可换行过个设置)

    binlog-ignore-db=mysql //不正确mysql库进行日志记录操作 例如以下意思雷同
    binlog-ignore-db=test
    binlog-ignore-db=information_schema
    binlog-ignore-db=performance_schema

    replicate-ignore-db=test  //不正确test进行复制操作 例如以下意思雷同
    replicate-ignore-db=mysql
    replicate-ignore-db=information_schema
    replicate-ignore-db=performance_schema

    3、改动从serverslave:
       #vi /etc/my.cnf
    [mysqld]
    port=1223
    bing-address=0.0.0.0  //意思是同意全部 机器 server安全起见可设置为指定的serverIP地址 如 116.128.1.10等
    log-bin=mysql-bin.log
    server-id=2
    binlog-do-db =new_test
    replicate-do-db =new_test

    binlog-ignore-db=mysql
    binlog-ignore-db=test
    binlog-ignore-db=information_schema
    binlog-ignore-db=performance_schema

    replicate-ignore-db=test
    replicate-ignore-db=mysql
    replicate-ignore-db=information_schema
    replicate-ignore-db=performance_schema
    4、重新启动两台server的mysql
       service mysql restart


    5、在主server上建立帐户并授权slave:
       #/usr/local/mysql/bin/mysql -u数据库账户名 -p数据库password   
       mysql>GRANT REPLICATION SLAVE ON *.* to 'newback_username'@'%' identified by 'newback_pwd'; //一般不用root帐号,“%”表示全部client都可能连(安全起见可将%替换成指定serverIP,如116.121.1.10)。仅仅要帐号。password正确。



    6、登录主server的mysql。查询master的状态(可在phpmyadmin 中运行次操作)
       mysql>show master status;
       +------------------+----------+--------------+------------------+
       | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
       +------------------+----------+--------------+------------------+
       | mysql-bin.000001 |      120 |              |                  |
       +------------------+----------+--------------+------------------+
       1 row in set (0.00 sec)
       注:运行完此步骤后不要再操作主serverMYSQL,防止主server状态值变化

    7、配置从serverSlave:
    mysql>change master to master_host='116.121.1.10',master_port=1223,master_user='newback',master_password='cctv@12315#$',master_log_file='mysql-bin.000001',master_log_pos=120   //注意不要断开,master_port为mysqlserver端口号(无引號),master_user为运行同步操作的数据库账户,“120”无单引號(此处的120就是show master status 中看到的position的值,这里的mysql-bin.000001就是file相应的值)。(此处可在从serverphpmyadmin中用sql语句操作)

    Mysql>start slave;    //启动从server复制功能(可在phpmyadmin中运行该SQL语句)

    8、检查从server复制功能状态:
       mysql> show slave statusG (可在从serverphpmyadmin中运行“show slave status” SQL语句)
       *************************** 1. row ***************************

                    ……………………(省略部分)
                  Slave_IO_Running: Yes       //此状态必须YES
                 Slave_SQL_Running: Yes       //此状态必须YES
                    ……………………(省略部分)

    注:Slave_IO及Slave_SQL进程必须正常执行。即YES状态,否则都是错误的状态(如:当中一个NO均属错误)。

    以上操作过程,主从server配置完毕。
      
    9、主从server測试:
    在主servernew_test数据库中的test表中插入 或者更新一条记录。假设从server相同更新 插入 则配置正确,否则错误

    10、mysql5.5+版本号与mysql5.5之前版本号的一些差异:

    当中大部分的内容相似
    主要是5.5之后不再支持master打头的參数
    如:
    master-host。master-user,master-password,master-port等。
    错误例如以下:
    [ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'master-host=192.168.2.182'
    主配置不变,依然是
    server-id=1
    log-bin=log
    binlog-do-db=database1          //须要同步的数据库
    binlog-do-db=database2
    binlog-ignore-db=mysql                     //被忽略的数据库
    …………(省略部分)
    从配置改为(注意下列凝视部分。统统被废弃了):
    server-id=2
    #master-host=192.168.124.51
    #master-user= AffairLog
    #master-password= password
    #master-port=3306
    #master-connect-retry=60
    replicate-do-db=database1     //同步的数据库
    replicate-do-db=database2
    replicate-ignore-db=mysql  //被忽略的数据库
    其次是不能直接使用slave start 或者start slave 命令了。由于那样会报错,
    我们须要使用change master to
    即:
    mysql>change master to
    >master_host='192.168.124.51',
    >master_user='username',
    >master_password='password',
    >master_log_file='bin-log.000001',
    >master_log_pos=120;
    然后start slave;
    (也可一句话运行如:"change master to master_host='116.121.1.10',master_port=1223,master_user='newback',master_password='cctv@12315#$',master_log_file='mysql-bin.000001',master_log_pos=120" 【实际命令去掉外面的双引號,port号和master_log_pos无报价 )
    其他一切不变

  • 相关阅读:
    Vue路由机制
    谷歌浏览器打不开应用商店的解决方法
    Vue报错——Component template should contain exactly one root element. If you are using vif on multiple elements, use velseif to chain them instead.
    Vue.js学习之——安装
    Vue使用axios无法读取data的解决办法
    关于localstorage存储JSON对象的问题
    2013年整体计划
    个人喜欢的警语收集
    Linux防火墙的关闭和开启
    Flex修改title 转载
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5031717.html
Copyright © 2020-2023  润新知