剑指架构师系列-MySQL的安装及主从同步
1、安装数据库
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm yum install mysql-community-server
安装时使用root用户权限。安装成功后即可进行启动:
/bin/systemctl restart mysqld.service
修改MySQL数据库root用户的密码,如下:
mysql -u root
mysql> set password for ‘root’@‘localhost’ = password('你要设置的密码');
mysql> exit
mysql -u root -p // 回车后输入密码即可
退了后重新使用用户名和密码登录即可。
远程授权连接mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; FLUSH PRIVILEGES;
查看MySQL的进程PID
netstat -anp|grep 3306|awk '{printf $7}'|cut -d/ -f1
MySQL随系统自启动
/bin/systemctl enable mysqld
2、数据库主从同步
主:master---192.168.0.147
从:slave1---192.168.0.248
在master主库上操作:
mysql -uroot // 在安装时用户名为root 密码默认为空 // 创建数据库 mysql>CREATE DATABASE IF NOT EXISTS cattle COLLATE='utf8_general_ci' CHARACTER SET='utf8'; // 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; mysql>GRANT ALL ON cattle.*TO 'cattle'@'%' IDENTIFIED BY 'cattle'; mysql>GRANT ALL ON cattle.*TO 'cattle'@'localhost' IDENTIFIED BY 'cattle'; // 创建用户 mysql>GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO slave1@'192.168.0.248' IDENTIFIED BY '123456'; mysql>flush privileges;
对/etc/my.cnf配置文件进行修改,在[mysql]下添加如下配置后重启MyQL。
server-id = 1 log-bin=mysql-bin log-slave-updates=cattle binlog-do-db=cattle binlog-ignore-db=mysql
锁主库后打包主库,然后解锁主库即可。
mysql> FLUSH TABLES WITH READ LOCK; mysql> SHOW MASTER STATUS;
#cd /var/lib/mysql #tar czvf cattle.tar.gz cattle
mysql> UNLOCK TABLES;
然后传输cattle.tar.gz到192.168.0.248上,如下:
scp /var/lib/mysql/cattle.tar.gz root@192.168.0.248:/var/lib/mysql/cattle.tar.gz
在slave1从库上操作:
修改文件cattle.tar.gz权限,如下:
#chown -R /var/lib/mysql/mysql:mysql cattle
修改/etc/my.cnf配置文件,在[mysql]下面增加如下配置:
server-id =2 log_bin=mysql-bin relay_log=mysql-relay-bin read-only=1 replicate-do-db=cattle log-slave-updates=1
重启MySQL后进行验证。
mysql -h192.168.0.147 -uslave1 -p123456 show grants for slave1@192.168.0.248;
在master上查看File与Position:
mysql -ucattle -pcattle mysql>SHOW MASTER STATUS\G;
如下:

可以看到两个属性的值。
到 slave1主机下
mysql -uroot stop slave mysql>CHANGE MASTER TO MASTER_HOST='192.168.0.147', MASTER_USER='slave1', MASTER_PASSWORD='123456', MASTER_LOG_FILE='mysql-bin.000006', MASTER_LOG_POS=1018; start slave
然后查看slave状态,如下:

观察Slave_IO_Running与Slave_SQL_Running参数都为yes。
在master主机下操作,如下:

下面就可以进行同步测试了。
参考文章:http://www.phperz.com/article/15/1113/169027.html
官方文档:http://dev.mysql.com/doc/refman/5.6/en/replication-howto-slaveinit.html
剑指架构师系列-MySQL的安装及主从同步的更多相关文章
- 剑指架构师系列-MySQL调优
介绍MySQL的调优手段,主要包括慢日志查询分析与Explain查询分析SQL执行计划 1.MySQL优化 1.慢日志查询分析 首先需要对慢日志进行一些设置,如下: SHOW VARIABLES LI ...
- 剑指架构师系列-MySQL常用SQL语句
(1)分清HAVING与WHERE的区别: HAVING 子句使你能够指定过滤条件,从而控制查询结果中哪些组可以出现在最终结果里面.WHERE 子句对被选择的列施加条件,而 HAVING 子句则对 G ...
- 剑指架构师系列-Nginx的安装与使用
Nginx可以干许多事情,在这里我们主要使用Nginx的反向代理与负载均衡功能. 1.Nginx的下载安装 在安装Nginx前需要安装如下软件: GCC Nginx是C写的,需要用GCC编译 PCR ...
- 剑指架构师系列-Redis安装与使用
1.安装Redis 我们在VMware中安装CentOS 64位系统后,在用户目录下下载安装Redis. 下载redis目前最稳定版本也是功能最完善,集群支持最好并加入了sentinel(哨兵-高可用 ...
- 剑指架构师系列-spring boot的logback日志记录
Spring Boot集成了Logback日志系统. Logback的核心对象主要有3个:Logger.Appender.Layout 1.Logback Logger:日志的记录器 主要用于存放日志 ...
- 剑指架构师系列-持续集成之Maven+Nexus+Jenkins+git+Spring boot
1.Nexus与Maven 先说一下这个Maven是什么呢?大家都知道,Java社区发展的非常强大,封装各种功能的Jar包满天飞,那么如何才能方便的引入我们项目,为我所用呢?答案就是Maven,只需要 ...
- 剑指架构师系列-Hibernate需要掌握的Annotation
1.一对多的关系配置 @Entity @Table(name = "t_order") public class Order { @Id @GeneratedValue priva ...
- 剑指架构师系列-Linux下的调优
1.I/O调优 CentOS下的iostat命令输出如下: $iostat -d -k 1 2 # 查看TPS和吞吐量 参数 -d 表示,显示设备(磁盘)使用状态:-k某些使用block为单位的列强制 ...
- 剑指架构师系列-Logstash分布式系统的日志监控
Logstash主要做由三部署组成: Collect:数据输入 Enrich:数据加工,如过滤,改写等 Transport:数据输出 下面来安装一下: wget https://download.el ...
随机推荐
- leetcode算法:Next Greater Element I
You are given two arrays (without duplicates) nums1 and nums2 where nums1's elements are subset of n ...
- 集合之深入理解HashMap
Hashmap是一种非常常用的.应用广泛的数据类型 1.hashmap的数据结构 要知道hashmap是什么,首先要搞清楚它的数据结构,在java编程语言中,最基本的结构就是两种,一个是数组,另外一个 ...
- linux系统环境与文件权限
默认有6个命令交互通道和一个图形界面交互通道,默认进入到的是图形界面通道 命令交互模式切换:ctrl+alt+f1---f6 图形交互界面 ctrl+alt+f7 1.图形界面交互模式 - termi ...
- libevent中evmap实现(哈希表)
libevent中,需要将大量的监听事件event进行归类存放,比如一个文件描述符fd可能对应多个监听事件,对大量的事件event采用监听的所采用的数据结构是event_io_map,其实现通过哈希表 ...
- Zookeeper增删改查
1.下载Zookeeper http://mirrors.shu.edu.cn/apache/zookeeper/ 这里我选择Zookeeper 3.4.11版本 ZooKeeper 支持某些特定的四 ...
- springboot集成jpa
spring data jpa简介 spring data jpa是spring基于hibernate及jpa规范封装出来的一套持久层框架.该框架极大的降低了开发者工作量,提升开发效率.提供的关键字可 ...
- 利用JS去做响应式布局
利用JS去做响应式布局 js动态改变布局方式 // 取浏览器可视区高宽 var lw = $(window).width(); var lh = $(window).height();// 页面加载完 ...
- 如何降低移动APP的开发成本
在当下竞争激烈的商业世界中,移动APP开发是您业务的有利补充.移动APP可通过吸引新客户和保留现有客户,帮助公司成功开展业务.定制一个属于自己公司的移动APP扮演着重要角色,手机APP可以说通过轻松处 ...
- OpenGL鼠标拖拽
前序 前段时间学习3D MAX,一对比就发现差距是相当大.我也做了一个三维展示的小软件,但是拖拽操作非常不友好,如果场景的尺寸特别大,会导致拖不动,尺寸过小会导致轻轻拖一下,模型就不知道飞哪去了.我是 ...
- 【django之modelform】
一.什么是modelform ModelForm顾名思义就Form和Django的Model数据库模型结合体,可以简单.方便得对数据库进行增加.编辑操作和验证标签的生成: 举例说明: 比如我们的数据库 ...