MySQL 主从(MySQL Replication),主要用于 MySQL 的时时备份或者读写分离。在配置之前先做一下准备工作,配置两台 mysql 服务器,如果你的机器不能同时跑两台 Linux虚拟机,那可以考虑在同一个机器上跑两个 mysql 服务。

MySQL 主从原理非常简单,总结一下:

  每个从仅可以设置一个主。
  主在执行 sql 之后,记录二进制 log 文件(bin-log)。
  从连接主,并从主获取 binlog,存于本地 relay-log,并从上次记住的位置起执行 sql,一旦遇到错误则停止同步。

  从这几条 Replication 原理来看,可以有这些推论:

  主从间的数据库不是实时同步,就算网络连接正常,也存在瞬间,主从数据不一致。

  如果主从的网络断开,从会在网络正常后,批量同步。

  如果对从进行修改数据,那么很可能从在执行主的 bin-log 时出现错误而停止同步,这个是很危险的操作。所以一般情况下,非常小心的修改从上的数据。

  一个衍生的配置是双主,互为主从配置,只要双方的修改不冲突,可以工作良好。

  如果需要多主的话, 可以用环形配置, 这样任意一个节点的修改都可以同步到所有节点。

  可以应用在读写分离的场景中,用以降低单台 MySQL 服务器的 I/O

  可以实现 MySQL 服务的 HA 集群

  可以是 1 主多从,也可以是相互主从(主主)

////////////////////////////////////////////////////////////////////////////////////////////////

    在一台机器安装两个mysql。实现主从

删除原来的mysql

rm -rf /usr/local/mysql/

安装mysql

切换到下载目录下

cd /usr/local/src/

解压

tar zxvf mysql-5.1.-linux-x86_64-glibc23.tar.gz

移动

mv mysql-5.1.-linux-x86_64-glibc23 /usr/local/mysql

检查有没有 mysql 用户

grep 'mysql' /etc/passwd

没有的话需要创建

useradd -s /sbin/nologin mysql

拷贝配置文件,覆盖掉原来的

cd /usr/local/mysql
cp support-files/my-small.cnf  /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld

编辑配置文件,指定mysql的安装路径和数据路径

vim /etc/init.d/mysqld
basedir=
datadir=
修改为
basedir=/usr/local/mysql
datadir=/data/mysql

删除原来的mysql

rm -rf /data/mysql/

从新生成mysql,有两个OK正常

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

查看/data/mysql下是否有两个目录 mysql和test

ls /data/mysql/

启动mysql

/etc/init.d/mysqld start

装第二个mysql

切换到安装目录,拷贝文件重命名第二个mysql名字

cd /usr/local
cp -r mysql mysql_slave

切换到第二个mysql目录下,拷贝配置文件

cd mysql_slave/
cp /etc/my.cnf .

修改配置文件

vim my.cnf
port            =
socket = /tmp/mysql.sock
改为
port =
socket = /tmp/mysql_slave.sock
datadir =/data/mysql_slave

生成mysql_slave

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql_slave

修改启动脚本

vim /etc/init.d/mysqlslave
basedir=/usr/local/mysql
datadir=/data/mysql
改为
basedir=/usr/local/mysql_slave
datadir=/data/mysql_slave
conf=$dasedir/my.conf

启动

/etc/init.d/mysqldslave start

部署和调优 2.7 mysql主从配置-1的更多相关文章

  1. 部署和调优 2.8 mysql主从配置-2

    配置主从准备工作 在主上创建一个测试的数据库 首先登录主的mysql,或者用绝对路径 /usr/local/mysql/bin/mysql mysql > create database db1 ...

  2. 部署和调优 2.9 mysql主从配置-3

    测试 先给主mysql解锁 > unlock tables; 删除一个表 > use db1; > show tables; > drop table help_categor ...

  3. 部署和调优 3.3 dns安装配置-3

    只有一台DNS服务器是不保险的,现在给他配置个从服务器. 在另外一台虚拟机上安装配置DNS服务器.先查看虚拟机ip为:192.168.1.111 ifconfig 给从安装bind和dig命令 yum ...

  4. 部署和调优 3.2 dns安装配置-2

    配置一个自定义的域,随便定义的,不实际存在. 在配置文件里,增加一个域 vim /etc/named.conf zone "123.com" IN { type master; f ...

  5. 部署和调优 3.1 dns安装配置-1

    安装配置DNS服务器 装一个bind,首先搜一下. yum list |grep bind bind.x86_64   我们安装这个 安装 yum install bind.x86_64 -y 看一下 ...

  6. sql MYSQL主从配置

    MYSQL主从配置 1.1 部署环境 主(master_mysql): 192.168.1.200 OS:CentOS 6.5 从(slave_mysql): 192.168.1.201 OS:Cen ...

  7. mysql主从配置

    引言: 双11,阿里云服务器打折,于是我忍不住又买了一台服务器,于是咱也是有两台服务器的爷们了,既然有了两台服务器,那么肯定要好好利用一下吧,那么就来玩玩mysql的主从配置吧. 准备 两台数据库服务 ...

  8. Mysql主从配置,实现读写分离

    大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...

  9. CentOS 7下的 Mysql 主从配置

    最近在玩mysql主从配置,在此记录一下 一.前言 1.安装两个虚拟机(CentOS 7).iP分别是192.168.47.131 和192.168.47.133.其中192.168.47.133作为 ...

随机推荐

  1. tyvj 1057 金明的预算方案 背包dp

    P1057 金明的预算方案 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 NOIP2006 提高组 第二道 描述 金明今天很开心,家里购置的新房就要领钥匙了 ...

  2. 页面js框架

    js 模板,所有页面控制js,以闭包形式编写代码,降低浏览器内存消耗,加快运行速度  请按照此结构编写,便于后期前端维护和修改​1. [代码][JavaScript]代码 /** * js 模板,所有 ...

  3. 用系统工具sxstrace检查缺少的VC运行时组件

    在管理员运行的命令提示符中输入sxstrace获得如下帮助: C:\>sxstrace WinSxs Tracing Utility. Usage: SxsTrace [Options] Opt ...

  4. AI探索(一)基础知识储备

    AI的定义 凡是通过机器学习,实现机器替代人力的技术,就是AI.机器学习是什么呢?机器学习是由AI科学家研发的算法模型,通过数据灌输,学习数据中的规律并总结,即模型内自动生成能表达(输入.输出)数据之 ...

  5. sql语句中as的用法和作用

    最近做项目中,偶然发现在SQL语句中出现了as这个词,一直以来没怎么关注是什么意思,毕竟影响不大,今天有空,就在网上查了一些资料,大概有了一些的了解 我们的Sql语句在很多数据库中都是通用的,比如像M ...

  6. L115

    The reasons of reading books - part I1. You will optimize your brain powerThis shouldn't come as a s ...

  7. L110 promise

    We assure you that such things will not happen again in our future deliveries. We'd like to avail ou ...

  8. Python ord()与chr()函数

    chr():十进制或十六进制数(0-255)转成对应的ASCII字符. ord():ASCII字符转成对应的十进制数. 一个小性质:ASCII表中大写字母排在前面小写排在后面,相差32. 比如: or ...

  9. 7.MySQL优化---存储过程和存储函数

    转自互联网. 当一个大型系统在建立时,会发现,很多的SQL操作是有重叠的,个别计算是相同的,比如:业务系统中,计算一张工单的计算方式.当遇到这些情况时,我们运用存储过程就是一个非常棒的优化啦.那么,什 ...

  10. 用VMware vSphere搭建虚拟化平台

    核心组件 vSphere是一款可以独立安装和运行在祼机上的系统,因此与其他我们以往见过的VMware Workstation 软件不同的是它不再依存于宿主操作系统之上.在ESXi安装好以后,我们可以通 ...