mysql数据库迁移文档
数据库迁移文档
一、需求
确保数据库稳定的运行,为开发人员提供方便的测试数据库和生产数据库的环境。
二、数据库整体架构(master/slave)
1.slave数据库安装
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
安装
yum --enablerepo=remi,remi-test install mysql mysql-server
查看版本
mysql --version
修改mysql存储目录 原/var/lib/mysql 修改成/home/mysql
service mysqld stop
//目录迁移到home下
mv /var/lib/mysql/ /home/
修改mysql配置文件
vi /etc/my.cnf
[mysqld]
datadir=/home/mysql
socket=/home/mysql/mysql.sock
[mysql]
socket=/home/mysql/mysql.sock
service mysqld start
三、数据库迁移备份还原操作
- 测试数据库导出操作
mysqldump -uroot -p123456 miss8 > miss8.sql
- Master节点,Slave节点导入数据库
mysql -uroot -piminerroot miss8 < miss8.sql
四、数据库迁移具体配置
- 一定要确保Master节点和Slave节点数据相同
- 配置Master节点
在Master的数据库中建立一个备份帐户:每个slave使用标准的MySQL用户名和密码连接master。进行复制操作的用户会授予REPLICATION SLAVE权限。用户名的密码都会存储在文本文件master.info中
命令如下:
mysql > GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backup@'192.168.32.47' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backup@'192.168.32.95' IDENTIFIED BY '123456';
建立一个帐户backup,并且只能允许从47,95这个地址上来登陆,密码是123456。
修改Master配置文件(/etc/my/cnf)
server-id=1
log-bin=mysql-bin
binlog-do-db=gquan_miss8 (只同步gquan_miss8)
service
mysqld restart (重启mysql服务)
show master
status; (查看master节点状态)
- 配置Slave节点(/etc/my/cnf)
#服务器id
server-id
= 2
##同步数据库name
replicate-do-db=miss8_master
##不需要同步数据库name
replicate-ignore-db=mysql
relay-log-index=slave-relay-bin.index
##中继日志
relay-log=slave-relay-bin
##将复制事件写进日志
log_slave_updates
= 1
read_only=1
- 启动Slave节点
接下来就是让slave连接master,并开始重做master二进制日志中的事件。你不应该用配置文件进行该操作,而应该使用CHANGE MASTER TO语句,该语句可以完全取代对配置文件的修改,而且它可以为slave指定不同的master,而不需要停止服务器。
一定要注意master_log_file等于master 目录/var/lib/mysql 最后一个二进制文件mysql-bin.000002,不然指定时候会报异常.如下
mysql>change master to
master_host='192.168.32.96', master_user='backup', master_password='123456',
master_log_file='mysql-bin.000002', master_log_pos=4;
mysql> slave start; //开启slave服务
可以用SHOW SLAVE
STATUS语句查看slave的设置是否正确:
mysql> SHOW SLAVE STATUS\G
Slave_IO_Running, 和Slave_SQL_Running是yes 表明slave节点配置正常
五、数据库使用注意事项
1.常用命令
//查看master状态
SHOW MASTER
STATUS\G
//查看slave状态
SHOW SLAVE STATUS\G
//查看master和slave上线程的状态。在master上
show processlist\G; 结果如下
最后提醒一下slave节点不允许写操作,不能在slave上面直接操作.
五、数据库复制常用语句
1.FLUSH LOGS
强制轮换(rotate)二进制文件日志,从而得到一个"完整的"二进制日志文件.
2.SHOW BINLOG EVENTS\G
检查二进制日志(默认第一个二进制文件)里有哪些事件如图
3.SHOW BINLOG EVENTS IN 'master-bin.000003'\G //查看第三个二进制文件里面的事件
4.SHOW MASTER STATUS\G //查看当前正在写入的是哪个二进制文件
mysql数据库迁移文档的更多相关文章
- mysql数据库设计文档-导出字段设计
navicat 是我一直在使用的一个数据库操作工具,非常方便快捷.如果没有可用navicat可以留言邮箱我直接发您. 今天来介绍一下使用navicat导出数据库字段设计.废话不多说,先看导出效果. 查 ...
- Mysql、Oracle、SQLServer等数据库参考文档免费分享下载
场景 MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统 ...
- JIRA6.36-7.23数据迁移文档
JIRA6.3.6-JIRA7.2.3数据迁移文档 安装JIRA7.2.3 安装包位于服务器/opt/SOFTWARE_PACKAGE目录下 建立JIRA安装的目录数据目录 cd /opt mkdir ...
- 最简单,最实用的数据库CHM文档生成工具——DBCHM
DBCHM支持SqlServer/MySql/Oracle/PostgreSQL等数据库的表列批注维护管理. DBCHM有以下几个功能 表,列的批注可以编辑保存到数据库. 表,列的批注支持通过pdm文 ...
- php-生成数据库设计文档
在线以及提供下载数据库设计文档 $dbserver = "192.168.128.190:42578"; $dbusername = "root"; $dbpa ...
- Proftpd mysql认证配置文档
Proftpd mysql认证配置文档 ver1.0, 2012/09/25 一.下载安装proftp mysql 下载 wget http://cloud.github.com/downloads/ ...
- Gemini.Workflow 双子工作流高级教程:数据库-设计文档
数据库设计文档 数据库名:Workflow_New 序号 表名 说明 1 WF_Activity wf_Activity 2 WF_ActivityInstance wf_ActivityInstan ...
- Net 通用权限管理系统源码 带数据库设计文档,部署说明文档
Net 通用权限管理系统源码 带数据库设计文档,部署说明文档 包括数据库设计文档部署安装文档源码数据库文件 下载地址:http://www.mallhd.com/archives/1389
- MySQL数据库迁移(转)
MySQL数据库迁移(数据文件直接迁移) 在今年10月下旬的时候,公司的服务器需要迁移,其中涉及到了MySQL数据库迁移.查看了一下MySQL数据文件的大小,接近60G的大小(实际数据并没用那么多). ...
随机推荐
- Javascript 的变量提升与预解析
一.什么是变量提升 在ES6之前,JavaScript没有块级作用域(一对花括号{}即为一个块级作用域),只有全局作用域和函数作用域.变量提升即将变量声明提升到它所在作用域的最开始的部分 二.怎么实现 ...
- [POJ3630]Phone List (Tire)
题意 trie字典树模板 LOJ有中文翻译https://loj.ac/problem/10049 思路 TIRE 代码 之前在LOJ上做过 直接交了 #include<cstdio> # ...
- css3_transition: 体验好的过渡效果。附 好看的按钮
利用css的transition属性详解,上图就是利用transition效果做的一个按钮. transition属性://举例子:transition:all 1s ease;transition: ...
- 查找更改的PeopleCode
当我们做工程包迁移时,经过会遗漏部分更改过的定义.我们可以用下面的SQL来查找变更项 变量 &OPRID =代码变更者 变量 &PROJECT 项目工程名 SELECT * FROM ...
- 借助Docker单机秒开数十万TCP连接
熟悉网络编程的都清楚系统只有65535个端口可用,1024以下的端口为系统保留,所以除去系统保留端口后可用的只有65411个端口,而一个TCP连接由TCP四元组(源IP.源端口.TCP.目标IP.目标 ...
- 批量删除Excel里面的换行符
关于批量删除excel里面的换行符,应该说写程序的遇上excel大体都会有这么个问题,在解决这个问题前,我的解决办法是把excel 的数据全部复制到txt里面, 因为操作txt比操作excel更为简单 ...
- org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): cn.e3mall.search.mapper.ItemMapper.getItemList
java.lang.RuntimeException: org.apache.ibatis.binding.BindingException: Invalid bound statement (not ...
- Spring源码学习-容器BeanFactory(四) BeanDefinition的创建-自定义标签的解析.md
写在前面 上文Spring源码学习-容器BeanFactory(三) BeanDefinition的创建-解析Spring的默认标签对Spring默认标签的解析做了详解,在xml元素的解析中,Spri ...
- Js 运行机制和Event Loop
一.为什么JavaScript是单线程? JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事.那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊. Java ...
- ckeditor+ckfinder
官方地址:http://ckeditor.com/ 复制ckeditor和ckfinder的文件夹到项目根路径下 拷贝ckfinder的config.xml到WEB-INF下 <config&g ...