Linux搭建主从数据库服务器(主从复制)
配置主机数据库:
1.克隆linux操作系统




2.修改Linux系统主机IP地址
主机IP:192.168.247.150
从机IP:192.168.247.151


3.通过xshell连接Master
连接主机IP:ssh 192.168.247.150
这里有可能连接失败。
方案一:将虚拟机的网络适配器设置成网络连接

方案二:在本机设置网络IP,将虚拟机IP设置成虚拟机上的Linux系统的同一网段即可。

4.安装Mysql数据库
1、创建文件夹
cd (空格)/usr/local/src
2、创建mysql文件夹
mkdir mysql
3、进入到Mysql文件夹
cd mysql
4、解压mysql (依次执行以下命令)
1.tar -xvf Percona-Server-5.6.24-72.2-r8d0f85b-el6-x86_64-bundle.tar
2.rpm -ivh Percona-Server-56-debuginfo-5.6.24-rel72.2.el6.x86_64.rpm
3.rpm -ivh Percona-Server-shared-56-5.6.24-rel72.2.el6.x86_64.rpm
4. rpm -ivh Percona-Server-client-56-5.6.24-rel72.2.el6.x86_64.rpm
5.rpm -ivh Percona-Server-server-56-5.6.24-rel72.2.el6.x86_64.rpm
6.导入sql脚本--直接将sql文件拖入编辑框即可
5、启动mysql服务
service mysql start
这里可以通过mysql 命令(因为在此步还未设置用户名和密码)进入到mysql数据库中查看下表是否正确。然后exit; 退出数据库
6、开启3306端口
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
7、设定用户名和密码
mysqladmin -u root password "root"
8、授权命令(在Xshell中登录mysql后执行)
语法:
grant [权限] on [数据库名].[表名] to ['用户名']@['web服务器的ip地址'] identified by ['密码'];
grant all on *.* to 'root'@'%' identified by 'root';(建议用这种)
或者指定IP地址
grant all on *.* to 'root'@'192.168.1.103' identified by 'root';
9、通过可视化工具连接198.167.247.150这台主机上的数据库。

配置从机数据库:
从机数据库是从主机复制而来的,所以只需添加服务号ID和添加二进制日志文件即可(第六步开始)。授权啥的都克隆过来了。
1.先将主机的Mysql服务停止之后关机,再进行虚拟机克隆
克隆和修改从机的IP地址的步骤同上
2、修改从库的MysqlId
vim /var/lib/mysql/auto.cnf 或者 vim auto.cnf
修改uuid值(点击 i 进入修改模式,点击esc键并输入 :wq 回车保存)uuid的值先随意改一个的地方,与主机的mysqlid区分开就OK

3、开启从库的端口号

打开3306端口:iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
查看当前端口的开放状态:/etc/rc.d/init.d/iptables status
4、开启192.168.150主机虚拟机
先看看端口号是否开放,若没开放先开放,若开放了直接开始mysql服务。
service mysql start
5、验证:通过可视化工具连接两台数据库服务器上的mysql数据库
分别是192.168.247.150和192.168.247.151两台机器上的数据库

6、主从复制的配置
1.修改主库的配置文件(修改主库的服务号)
vim /etc/my.cnf
按 i 进入编辑模式
server-id=1
log-bin=mysql-bin
按esc退出并输入 :wq 命令保存

2、重新启动mysql
先停止mysql服务 service mysql stop
此步可能会有个ERRO:

解决方法:
先查询mysql服务项 ps -ef |grep mysql

然后将多余的进程杀掉 kill -9 1953 2146 多余的端口号
3、启动mysql服务
service mysql start

4、查看主库的Master信息
Show master status

5、将从库挂载到主库上
1.修改从库的服务号 vim /etc/my.cnf

server-id的值是自己定的。这里就主机为1,从机为2,往后若还有其它从机就为3,4,5..... 这样方便区分识别。
6、重启从机服务器
先stop 再 start 即可
7、从节点挂载到主节点
在从表的可视化工具上执行挂载语句:
/*配置注解 主机名/端口号/用户名/密码/二进制文件名称/同步的位置 */
CHANGE master to MASTER_HOST=',
MASTER_USER='root',MASTER_PASSWORD='root',
MASTER_LOG_FILE='
备注:
红色部分为需要修改的地方,更具实际信息添加.
二进制文件名称和同步位置通过第4步操作从主库中查出的确切数据
8、启动从节点
start slave
show slave status(测试主从库是否有下面的两个yes状态)

如果出现2个yes则表示上述配置运行成功。
9、测试是否成功
通过在主机的数据库上创建一个新的测试数据库 "AAA"数据库,若在从机的数据库刷新后也存在 “AAA”数据库则表明当前的数据库主从复制搭建成功!!!!
也可以在主库指定的数据库的数据表中添加一条记录,若在从库的相同数据库的数据表中也存在这条记录也表明搭建成功!!!!!!

Linux搭建主从数据库服务器(主从复制)的更多相关文章
- Linux之主从数据库(1+X)
主从数据库搭建 改主机名 配置网络 配置yum源(下载mysql) 写域名解析文件 主从同步:(备份,负载(读)) 第一步:数据库的初始化,修改配置文件,定义server-id(所有节点),开启二进制 ...
- Centos7搭建主从DNS服务器
1.准备 例:两台192.168.11.10(主),192.168.11.11(从),域名www.test1.com # 主从DNS服务器均需要安装bind.bind-chroot.bind-util ...
- Linux 搭建Java web服务器
未经允许,不得转载 1.jdk的下载与配置 1.1下载 sudo wget http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45- ...
- MySQL搭建主从数据库 实现读写分离
首先声明,实际生产中,网站为了提高用户体验,性能等,将数据库实现读写分离是有必要的,我们让主数据库去写入数据,然后当用户查询的时候,然后在从数据库读取数据,故能减轻数据库的压力,实现良好的用户体验! ...
- Linux——搭建Samba(CIFS)服务器
一.Samba的基本概念 Samba服务:是提供基于Linux和Windows的共享文件服务,服务端和客户端都可以是Linux或Windows操作系统.可以基于特定的用户访问,功能比NFS更强大. S ...
- 【Linux搭建创建FTP服务器】---完美解决 - 费元星
配置大红字文件置顶: vsftp d.conf 4.5KB useradd -d /home/bai_du -s /sbin/nologin bai_du 修改访问权限: usermod ...
- Linux搭建oracle数据库
1.安装前准备 软件硬件要求 操作系统:CentOS 6.4(32bit)Oracle数据库版本:Oracle 10g(10201_database_linux32.zip)最小内存:1G(检查命 ...
- linux搭建简单samba服务器
1.安装需要的软体 yum install -y samba samba-client samba-common 2.创建samba需要的本地用户,创建samba服务使用的目录 Linux系统文件的读 ...
- Linux——搭建Apache(httpd)服务器
一.基本概念 Apache(或httpd)是Internet上使用最多的Web服务器技术之一,使用的传输协议是http超文本传输协议(一个基于超文本的协议),用于通过网络连接来发送和接受对象. 有两个 ...
随机推荐
- ACM1325Is it A tree?
通过这道简单而又坑人的题目,练习并查集和set 容器的使用: Is It A Tree? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: ...
- [C#] 类型学习笔记三:自定义值类型
既前两篇之后,这一篇我们讨论通过struct 关键字自定义值类型. 在第一篇已经讨论过值类型的优势,节省空间,不会触发Gargage Collection等等. 在对性能要求比较高的场景下,通过str ...
- 数据存储之 SharedPreference 共享参数 (转)
在上一讲中,我们学习了如何将数据存储在SD卡中[数据存储之File文件存储 [即SD卡的写入与读取]],这是一种存储方式,这一讲我们来学习一下使用SharedPreferences存储数据. ...
- Linux LVM分区管理、扩展
一.LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写.LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它 ...
- mysql 可视化界面操作指令
1.让自增长从新开始 ALTER TABLE users auto_increment =1;//让表中的自增长从新从0开始 2.条件查询 SELECT name from users WHERE ...
- 前端表单序列化为json串,以及构造json数组、json串
var parm={ username:"zhangsan", age:24, email:"352400260@qq.com" }; console.log( ...
- websocket连接相关的几个问题
https://blog.csdn.net/shangmingtao/article/details/75810099 https://blog.csdn.net/keketrtr/article/d ...
- js中的return
retrun true: 返回正确的处理结果. return false:分会错误的处理结果,终止处理. return:把控制权返回给页面(如果条件满足,后面的逻辑就不执行了). if(this.in ...
- mysql主从复制、操作语句
授权 grant replication slave on *.* to slave@192.168.10.64 identified by "123456" 登录测试 mysql ...
- Linux进程调度与源码分析(一)——简介
本系列文章主要是近期针对Linux进程调度源码进行阅读与分析后的经验总结,分析过程中可能结合部分Linux网络编程的相关知识以便于理解,加深对Linux进程调度的理解和知识分享. 本系列文章主要结合L ...