mysql主从复制架构配置
第一个mysql
1、下载mysql,解压,移动解压后的目录到指定目录下。
如:mv /usr/local/src/mysql-5.1.. /usr/local/mysql
创建mysql用户, useradd -s /sbin/nologin mysql
创建数据存放目录/data/mysql
并指定拥有者所属组:chown -R mysql /data/mysql
2、拷备配置文件,启动脚本到指定目录下
cp my.cnf到/etc/my.cnf
cp my.server到/etc/init.d/mysqld
3、编辑启动脚本:
vim /etc/init.d/mysqld
指定datadir和basedir
如:
basedir=/usr/local/mysql
datadir=/data/mysql
进入安装目录,初始化
./script/mysql_install_db --user=mysql --datadir=/data/mysql
4、启动mysql服务:/etc/init.d/mysqld start
第二个mysql
1、拷备mysql安装目录 :
cp -r /usr/local/mysql /usr/local/mysql2
2、 拷备配置文件,启动脚本到指定目录下
cp /etc/my.cnf到/usr/local/mysql2/my.cnf
cp /etc/init.d/mysqld /etc/init.d/mysqld2
修改my.cnf文件中如下内容:
[mysqld]
port = 3307
socket = /tmp/mysql2.sock
datadir = /data/mysql2
并且创建数据存放目录。/data/mysql2
修改mysqld2 启动脚本。
指定datadir和basedir
如:
basedir=/usr/local/mysql2 #安装目录
datadir=/data/mysql2 #数据存放目录
同时:conf=$basedir/my.cnf #指定配置文件。
1、在主mysql创建测试数据库
mysql -uroot -p52033dd -S /tmp/mysql.sock
create database db1;
2、复制数据到数据库db1;
先备份数据 mysqldump -uroot -p52033dd
-S /tmp/mysql.sock mysql>1.sql
复制(恢复)数据 mysql -uroot -p52033dd
-S /tmp/mysql.sock db1 <1.sql
use db1; show tables;
可查看数据库db1中有没有表数据
3、修改主mysql的my.cnf配置文件
修改如下内容:
log-bin=mysql-bin[可自定义]
server-id = 1
有时需要指定更新(do)或不更新(ignore)的数据库:
如 binlog-do-db=databasename1,databasename2;
binlog-ignore-db=databasename1,databasename2;
重新启动mysql服务:
/etc/init.d/mysqld restart
4、在主mysql中创建一个用户
作为从mysql访问主mysql端数据的用户:
grant replication slave on *.* to 'repl'@'127.0.0.1' identified by '123456';
5、使更改立即生效:flush privileges;
6、锁定数据库,不允许更改任何数据。
flush tables with read lock;
7、查看状态:show master status;
记住如下内容:
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000011 | 331 | | |
+------------------+----------+--------------+------------------+
1、修改从mysql中的mysql.cnf配置文件
修改如下,改变其server-id号使和主mysql不同。
server-id = 2
保存后重启mysql服务
/etc/init.d/mysql2 restart
2、创建数据库使之和主mysql相同。
mysql -S /tmp/mysql2.sock -e "create database db1"
3、复制数据:
mysql -S /tmp/mysql2.sock db1 < 1.sql
4、进入数据库
mysql -S /tmp/mysql2.sock
停止 :slave stop; mysql5.6为stop slave;
配置主从:
change master to master_host='127.0.0.1',master_port=3306,master_user='repl',
master_password='123456',master_log_file='mysql-bin.000011',
master_log_pos=331;
#其中 host指定ip ,post 指定主mysql端口,
user指定访问用户名,password密码,
log_file是之前主mysql上查看状态得到的file名,
log_pos也是之前主mysql查看状态Position得到的。
5、启动:slave start;
6、查看slave的状态;
show slave status\G;
如果以下两项参数为YES,则成功。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
主mysql解锁:unlock tables;
测试:
1、在主mysql操作,删除表
drop table help_topic;
在从上查看表列表:是否存在help_topic表
use db1; show tables;
2、在主mysql操作,创建表
create table dd(`id` int(8), `name` char(40));
在从上查看表列表:是否存在dd表
3、在主mysql操作,删除库
drop database db1;
在从上查看库列表:是否存在db库
show databases;
主从mysql监控核心:
两个参数 Slave_IO_Running: Yes
Slave_SQL_Running: Yes
error 错误日志Last_SQL_Error:
***特别提示:在不同服务器上安装端口不需要改动,只改变其server-id号使和主mysql不同
mysql主从复制架构配置的更多相关文章
- (8) MySQL主从复制架构使用方法
一. 单个数据库服务器的缺点 数据库服务器存在单点问题 数据库服务器资源无法满足增长的读写请求 高峰时数据库连接数经常超过上限 二. 如何解决单点问题 增加额外的数据库服务器,组建数据库集群 同一集群 ...
- 在线建立或重做mysql主从复制架构方法(传统模式和GTID模式)【转】
mysql主从复制架构,是mysql数据库主要特色之一,绝大多数公司都有用到. 而GTID模式是基于事务的复制模式的意思,发展到现在也是越来越多人用. 以前很多文章,介绍搭建mysql主从复制架构,是 ...
- MySQL主从复制架构使用方法
原文:MySQL主从复制架构使用方法 一. 单个数据库服务器的缺点 数据库服务器存在单点问题 数据库服务器资源无法满足增长的读写请求 高峰时数据库连接数经常超过上限 二. 如何解决单点问题 增加额外的 ...
- Dubbo入门到精通学习笔记(十九):MySQL源码编译安装、MySQL主从复制的配置
文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制 ...
- MySQL主从架构配置
MySQL主从架构配置有两台MySQL数据库服务器master和slave,master为主服务器,slave为从服务器,初始状态时,master和slave中的数据信息相同,当master中的数据发 ...
- mysql主从复制安装配置
mysql主从复制安装配置 基础设置准备 #操作系统: centos6.5 #mysql版本: 5.7 #两台虚拟机: node1:192.168.182.111(主) node2:192.168.1 ...
- 记一次 mysql主从复制安装配置 过程
mysql主从复制安装配置 1.centos安装及准备 去centos官网下载相应source版本的镜像文件并在vmware中安装,安装中会遇到填写installation source,输入以下即可 ...
- MySQL 主从架构配置详解
无论是哪一种数据库,数据的安全都是至关重要的,因此熟练掌握数据库的安全备份功能,是作为开发人员,特别是后端开发人员的一项必备技能.MySQL 数据库内建的复制功能,可以帮助我们对数据进行异地备份,读写 ...
- MySQL主从复制的配置
环境 操作系统:CentOS-6.6-x86_64-bin-DVD1.iso MySQL版本:mysql-5.6.26.tar.gz 主节点IP:192.168.1.205 主机名:edu-m ...
随机推荐
- 服务器挂载 ntfs32 硬盘
1,fdisk -l 查看硬盘名称 2,mount -t ntfs-3g /硬盘名/ /目标目录/ 3,umount /硬盘名/ 4,如果卸载不了 就fuser -km /目标目录/
- MyEclipse开发秘籍——使用DevStyle Icon Designer(一)
[MyEclipse CI 2019.4.0安装包下载] DevStyle主题包括一个Icon Designer,允许您自定义图标.Icon Designer包含在DevStyle主题中,可作为Ecl ...
- k8sService资源
一.service资源及其实现模型 通过规则定义出由多个pod对象组合而成的逻辑集合,以及访问这组pod的策略.service关联pod资源的规则要借助于标签选择器来完成 1.service资源概述 ...
- k8s命令集锦
集群环境相关命令$kubectl vertion --short=true #显示当前使用的客户端及服务端程序版本信息$kubectl cluster-info #获取集群信息$kubectl api ...
- Spring MVC 设置UTF-8编码
按照需求选其中之一即可吧. 修改读取参数时候的编码: 在web.xml中: 添加一个过滤器(filter),注册 org.springframework.web.filter.CharacterEnc ...
- LVS+Heartbeat安装部署文档
LVS+Heartbeat安装部署文档 发表回复 所需软件: ipvsadm-1.24-10.x86_64.rpmheartbeat-2.1.3-3.el5.centos.x86_64.rpmhear ...
- 基于树莓派2代的DIY无线路由器
最近手上多了一个树莓派2代,于是折腾就这么开始了. 因为总是得要个显示屏或者路由器或者插根网线才能玩,有点麻烦,所以有了此文. 设备清单: 树莓派2代 EDUP EP-N8508GS无线网卡(USB) ...
- qt5--字符串格式拼接
QString str=QString("x坐标为:%1 y坐标为:%2").arg(i).arg(j);
- Python CGI编程Ⅲ
GET和POST方法 浏览器客户端通过两种方法向服务器传递https://www.xuanhe.net/信息,这两种方法就是 GET 方法和 POST 方法. 使用GET方法传输数据 GET方法发送编 ...
- 51 Nod 1069 Nim游戏
分析: a1 xor a2 xor a3 ... xor an !=0 则为必胜态 a1 xor a2 xor a3 ... xor an ==0 则为必败态 也就是说只要计算异或值,如果非零则A赢, ...