一  主服务器修改

mysql的主从设置主要原理是 主数据库开启日志,并且创建从服务器专属账户,从服务器用该账户,读取到日志进行同步

  1. 准备两个mysql数据库(如何安装请查看,linux下mysql安装)版本最好一致,数据最好一致。
    42.159.88.203   root  !QAZ2wsx(设置成主数据库)
    42.159.93.208   root  !QAZ2wsx(设置成从数据库)
  2. 进入主数据库的linux的 root账户
    使用命令 # su 输入密码进入root账户
  3. 主数据库修改:
    (1) 使用命令 # vi /etc/my.cnf
    (2) 点击insert按钮进入insert模式

    (3) 复制配置到my.cnf文件(windows下可以直接ctrl+c复制内容,linux下用shift+insert粘贴内容)
         [mysqld]
         log-bin=mysql-bin 
         server-id=1 

    (4) 点击 ESC退出 insert ,输入 :wq! 回车  保存退出 :q不保存退出(esc退出insert模式 :wq! 会在最低下被打出,其他位置都不对)
  4. 进入mysql
    使用命令 # mysql -uroot -p 输入密码,出现“mysql>” 后即为进入成功
  5. 创建“从”数据用来同步的账户 slave1 密码 !QAZ2wsx  (注意设置密码是有策略的,及sql语句是需要“;”号的)
    mysql>use mysql
    mysql>CREATE USER 'slave1'@'42.159.93.208' IDENTIFIED BY '!QAZ2wsx';
    mysql>GRANT REPLICATION SLAVE ON *.* TO 'repl'@'123.57.44.85'; 
    mysql>lush privileges; 
    mysql>SHOW MASTER STATUS;
    (1)用命令  use mysql 进入到mysql数据库中进行添加用户操作
    (2)用命令  CREATE USER 'slave1'@'42.159.93.208' IDENTIFIED BY '!QAZ2wsx';
             如果出现
             密码不够复杂,要求 大小写 特殊字符数字 及8位以上
    (3)用命令 select User ,Host from user; 查询

    (4)使用命令 GRANT REPLICATION SLAVE ON *.* TO 'slave1 '@'42.159.93.208';  分配权限
    (5)使用命令 flush privileges;  刷新权限

    (6)使用命令SHOW MASTER STATUS;查看主服务器状态

    (7)重启服务
    exit 退出sql
    使用命令 service mysqld restart 重启服务

二  从服务器修改

    1. 同样进入从服务器的root账户

    2. 同样找到my.cnf配置文件,添加server-id

      [mysqld]
      server-id=2 #设置server-id,必须唯一
    3. 同样进入mysql
    4. 执行同步SQL语句(需要主服务器主机名,登陆凭据,二进制文件的名称和位置):

      使用命令 CHANGE MASTER TO MASTER_HOST='42.159.88.203',MASTER_USER='slave1',MASTER_PASSWORD='!QAZ2wsx',MASTER_LOG_FILE='mysql-bin.000006',MASTER_LOG_POS=941;

    5. 启动slave同步进程:
      使用命令  start slave;
    6. 查看slave状态
      使用命令 show slave status\G;

 

linux下mysql设置主从的更多相关文章

  1. Linux下MySQL数据库主从同步配置

    说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...

  2. 笔记:linux下mysql设置utf-8编码方法

    一:查看mysql版本 1.1 mysql –V 在终端界面输入上面命令.显示如下: mysql Ver 14.14 Distrib 5.5.35, fordebian-linux-gnu (x86_ ...

  3. 设置Linux下Mysql表名不区分大小写

    1.Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写:2.用root帐号登录后,在/etc/my.cnf中的[mysqld]后添加添加lower_case_table_nam ...

  4. windows下mysql和linux下mysql主从配置

    1. linux下mysql安装版本5.6   windows下mysql版本5.7  不要问我为什么版本不一致  就是想这么搞 2. linux为主服务器   windows为从服务器 3.找到li ...

  5. Linux下MySQL/MariaDB Galera集群搭建过程【转】

    MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...

  6. linux下mysql字符集编码问题的修改

    安装完的MySQL的默认字符集为 latin1 ,为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件:由于linux下MySQL的默认安装目录分布在不同的文件下:不像windo ...

  7. linux下MySQL 5.6源码安装

    linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...

  8. linux下mysql的安装

    一.下载 http://dev.mysql.com/downloads/mysql/ 选择对应的版本,这里选择“Linux-Generic” 以64位系统为例,这里需要下载如下两个文件: MySQL- ...

  9. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

随机推荐

  1. Python字符串拼接的五种方式

    第一种 通过加号(+)的形式 print('第一种方式通过加号形式连接 :' + 'love'+'Python' + '\n') 第二种 通过逗号(,)的形式 print('第二种方式通过逗号形式连接 ...

  2. 【原】GitHub使用教程

    GitHub使用教程 1 注册 GitHub 账户 要想使用github第一步当然是注册github账号了(www.github.com). 2 安装客户端 msysgit github是服务端,要想 ...

  3. 【SQL Server】使用SQL比较版本号

    最近遇到这么一个场景,需要用SQL从表里取出版本号小于'10.2'的所有数据.目前表中以存在的数据中,版本号有两种格式,一个是'X.Y',另一个是'X'.对于SQL Server来说,其没有strin ...

  4. 对ACID的深层解读

    A:Atomieity 通常,原子指不可分解为更小粒度的东西,该术语在计算机的不同领域里面有着相似但却微妙的差异.在多线程并发编程中,如果某线程执行一个原子操作,这意味着其他线程是无法看到该结果的中间 ...

  5. Spring Batch 4.2 新特性

    Spring Batch 4.2 的发行版主要增强了下面的改进: 使用 Micrometer 来支持批量指标(batch metrics) 支持从 Apache Kafka topics 读取/写入( ...

  6. CDOJ 1255 斓少摘苹果 图论 2016_5_14

    斓少摘苹果 Time Limit: 3000/3000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit  St ...

  7. Vue_(组件通讯)父组件向子组件传值

    Vue组件 传送门 父组件向子组件传值:父组件通过属性向下传值的方式和子组件通信: 使用步骤: 1.定义组件:现有自定义组件com-a.com-b,com-a是com-b的父组件 2.准备获取数据:c ...

  8. [CSP-S模拟测试]:密码(数位DP+库默尔定理)

    题目描述 为了揭穿$SERN$的阴谋,$Itaru$黑进了$SERN$的网络系统.然而,想要完全控制$SERN$,还需要知道管理员密码.$Itaru$从截获的信息中发现,$SERN$的管理员密码是两个 ...

  9. JS基础_toString()

    当我们直接在页面中打印一个对象时,实际上是输出的对象的toString()方法的返回值 如果我们希望在输出对象时不输出[ object Object ],可以为对象添加一个toString()方法或者 ...

  10. ActivityLifecycleCallbacks

    public class ActivityLifecycleCallbacks implements Application.ActivityLifecycleCallbacks, ActivityS ...