linux MySql 主从异步复制
[root@localhost ~]# hostname master.allentuns
###SLAVE 执行
[root@localhost ~]# sed -i 's@\(HOSTNAME=\).*@\1slave.allentuns.com@g' /etc/sysconfi
g/network
[root@localhost ~]# hostname slave.allentuns
配置主机名解析
修改 hosts 文件来实现
###MASTER 执行
[root@master ~]# cat >>
/etc/hosts <<
EOF
> 192.168.2.100 master.allentuns.com
> 192.168.2.200 slave.allentuns.com
> EOF
###SLAVE 执行
[root@slave ~]# cat >> /etc/hosts <<
EOF
> 192.168.2.100 master.allentuns.com
> 192.168.2.200 slave.allentuns.com
> EOF
同步服务器时间
###MASTER 执行
[root@master ~]# crontab -l
*/5 * * * * /usr/sbin/ntpdate -u asia.pool.ntp.org
###SLAVE 执行
*/5 * * * * /usr/sbin/ntpdate -u asia.pool.ntp.org
4. 安装 MySql
4.1 在 Master 与 Slave 服务器上分别安装 Mysql
###MASTER执行
1、解压 mysql 并建立软链接
tar xf
mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz -C
/usr/local/
cd /usr/local/
ln -sv mysql-5.6.12-linux-glibc2.5-x86_64 mysql
2、创建 mysql 用户
groupadd -r mysql
useradd -g mysql -r
-s /sbin/nologin -M -d /mydata/data mysql
3、赋予 mysql 程序目录的属主和属组为 mysql 用户
chown -R mysql.mysql /usr/local/mysql/
4、创建 mysql 数据存储目录并赋予此目录的属主和属组为 mysql 用户
mkdir -pv /mydata/data
chown -R mysql:mysql /mydata/data/
5、初始化 mysql 依赖 libaio
yum -y install libaio
6、初始化 mysql
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mydata/d ata --user=mysql
7、为了 mysql 数据库的安全,改回 mysql 程序目录的属主
chown -R root /usr/local/mysql/*
8、修改 mysql 的默认配置文件,并优化相关参数
# vim /usr/local/mysql/my.cnf
添加内容是:
log-bin = master-bin
server-id = 1 port = 3306
basedir = /usr/local/mysql/
datadir = /mydata/data
socket
= /var/lib/mysql/mysql.sock innodb_file_per_table = 1
9、为 mysql 提供 sysv 服务脚本并启动服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
10、将 mysql 加入到服务列表并设置开机自启动
chkconfig --add mysqld chkconfig mysqld on
11、mysql 命令添加到环境变量中
# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
# source /etc/profile
12、输出 mysql 的 man 手册到 man 命令的查找路径
# yum -y install man
# vim /etc/man.config +54
加入到
54 行后
MANPATH /usr/local/mysql/man
13、输出 mysql 的库文件
echo "/usr/local/mysql/lib/"
> /etc/ld.so.conf.d/mysql.conf
ldconfig -v
14、输出 mysql 的头文件到系统头文件
ln -sv /usr/local/mysql/include/ /usr/include/mysql
service mysqld start
16、测试 mysql[root@mysql ~]# mysql
Welcome to the MySQL monitor. Commands end with ;
or \g. Your MySQL connection id is 1
Server version: 5.6.12-log MySQL Community Server (GPL)
Copyright (c)
2000, 2013, Oracle and/or its affiliates. All
rights reserved.
Oracle is a
registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h'
for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> \q Bye
###SLAVE执行
1、解压 mysql 并建立软链接
tar xf mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
cd /usr/local/
ln -sv mysql-5.6.12-linux-glibc2.5-x86_64 mysql
2、创建 mysql 用户
groupadd -r mysql
useradd -g mysql -r
-s /sbin/nologin -M -d /mydata/data mysql
3、赋予 mysql 程序目录的属主和属组为 mysql 用户
chown -R mysql.mysql /usr/local/mysql/
4、创建 mysql 数据存储目录并赋予此目录的属主和属组为 mysql 用户
mkdir -pv /mydata/data
chown -R mysql:mysql /mydata/data/
5、初始化 mysql 依赖 libaio
yum -y install libaio
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mydata/d
ata --user=mysql
7、为了 mysql 数据库的安全,改回 mysql 程序目录的属主
chown -R root /usr/local/mysql/*
8、修改 mysql 的默认配置文件,并优化相关参数
# vim /usr/local/mysql/my.cnf
添加内容是: [mysqld]
log-bin = master-bin
server-id = 1
port = 3306
basedir = /usr/local/mysql/
datadir = /mydata/data
socket
= /var/lib/mysql/mysql.sock innodb_file_per_table = 1
9、为 mysql 提供 sysv 服务脚本并启动服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
10、将 mysql 加入到服务列表并设置开机自启动
chkconfig --add mysqld chkconfig mysqld on
11、mysql 命令添加到环境变量中
# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
# source /etc/profile
12、输出 mysql 的 man 手册到 man 命令的查找路径
# yum -y install man
# vim /etc/man.config +54
加入到
54 行后
MANPATH /usr/local/mysql/man
13、输出 mysql 的库文件
echo "/usr/local/mysql/lib/"
> /etc/ld.so.conf.d/mysql.conf
ldconfig -v
14、输出 mysql 的头文件到系统头文件
ln -sv /usr/local/mysql/include/ /usr/include/mysql
15、启动 mysql 服务
service mysqld start
16、测试 mysql[root@mysql ~]# mysql
Welcome to the MySQL monitor. Commands end with ;
or \g. Your MySQL connection id is 1
Server version: 5.6.12-log MySQL Community Server (GPL)
Copyright (c)
2000, 2013, Oracle and/or its affiliates. All
rights reserved.
Oracle is a
registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h'
for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> \q
Bye
linux MySql 主从异步复制的更多相关文章
- mysql主从异步复制过程
mysql是现在普遍使用的数据库,但是如果宕机了必然会造成数据丢失.为了保证mysql数据库的可靠性.就要会一些提高可靠性的技术. 主从复制原理如下. slave(从服务器) master(主服务器) ...
- mysql主从数据库复制
http://blog.csdn.net/lgh1117/article/details/8786274 http://blog.csdn.net/libraworm/article/details/ ...
- mysql关于“异步复制”“同步复制”“半同步复制”“无损复制”的概念与区别
异步复制:主把事务写到binlog日志并不管从是否接收或者什么时候接收,commit之后,不会与从发生ack之类的交互. 同步复制:当主提交一个事务,在主向前端返回一个commit成功的指令前,必须保 ...
- MariaDB主从异步复制详解
一 异步复制(Asynchronous replication) 1.MariaDB本身支持单向的.异步的复制.异步复制意味着在把数据从一台机器拷贝到另一台机器时有一个延时,最重要的是这意味着当应用系 ...
- mysql主从服务器复制操作
master主机ip:192.168.1.19 用户名sunzy 密码123456slave主机ip:192.168.1.20 1.配置master1)接下来对master进行配置,包括打开二进制日 ...
- mysql主从服务器复制原理
在实际企业应用环境当中,单台mysql数据库是不足以满足日后业务需求的.譬如服务器发生故障,没有备份服务器来提供服务的话,业务就得停止.介于这种情况,我们来学习一下mysql主从复制. 将Mysql的 ...
- zabbix3.2监控mysql主从(复制)状态
问题背景: MySQL主从架构最常见不过了,在生产环境下,主从关系的状态的重要性不言而喻,这里小记一下通过zabbix监控主从状态,并用微信告警测试. 测试环境: 软件 MySQL-master My ...
- MySQL的异步复制、全同步复制与半同步复制
异步复制 异步复制,主库将事务 Binlog 事件写入到 Binlog 文件中,此时主库只会通知一下 Dump 线程发送这些新的 Binlog,然后主库就会继续处理提交操作,而此时不会保证这些 Bin ...
- Linux mysql主从同步配置
一.在两台Ubuntu机器上安装mysql1.检查系统中是否安装了mysql 这个是已经安装了的 没有安装的话执行上条命令===============================MySQL的一些 ...
随机推荐
- js,正则实现金钱格式化
https://blog.csdn.net/qq_36279445/article/details/78889305 https://github.com/jawil/blog/issues/30
- [LeetCode]-DataBase-Department Highest Salary
The Employee table holds all employees. Every employee has an Id, a salary, and there is also a colu ...
- Spring Data JPA学习笔记
下面先来介绍一下JPA中一些常用的查询操作: //And --- 等价于 SQL 中的 and 关键字,比如 findByHeightAndSex(int height,char sex): publ ...
- php语法标识符
php语法标识符 一.总结 一句话总结: 常用<?php //这里写代码 ?>:其它要么不常用,要么需要开配置 二.PHP四大标识符(语法环境) 参考或转自:PHP四大标识符(语法环境) ...
- IFG以太网帧间隙
交换机的线速 描述交换机性能可以使用“线速”这个概念,那它是什么意思呢?所谓的线速是指经过交换机处理的理想状态下最大数据率.描述数据率可以用bps(bit per second)和mpps(milli ...
- A 内存挂 B 封包挂 C 钩子挂 D CALL挂 外挂
https://www.zhihu.com/question/32291769 作者:猎狐链接:https://www.zhihu.com/question/32291769/answer/70929 ...
- 记录一下WPF中自寄宿asp.net服务添加urlacl的问题
asp.net公开服务地址时,由于当前用户权限问题,会导致服务地址未添加到urlacl池中报错. 关于添加urlacl的细节,请参考我之前的文章:asp.net self host and urlac ...
- ES6数组的拓展
扩展运算符 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. console.log(...[1, 2, 3]) // 1 2 3 c ...
- Python 笔试集(4):True + True == ?
目录 目录 前文列表 面试题True Ture 布尔值 布尔类型是特殊的整数类型 前文列表 Python 笔试集:什么时候 i = i + 1 并不等于 i += 1? Python 笔试集(1):关 ...
- Eclipse设置保存时自动格式化代码
在使用eclipse时,经常需要使用到Ctrl+Shift+F来格式化代码,可以打开保存时格式化,会更方便. 打开方式:Window-->Preferences-->Java --> ...