您好,欢迎来到豆掰娱乐。
搜索
您的当前位置:首页MySql5.6在Linux服务器上设置数据库同步备份的方法

MySql5.6在Linux服务器上设置数据库同步备份的方法

来源:豆掰娱乐


项目已经完成,后期就是维护之类的了.当然会包括数据库的维护. MySql有个功能Replication正好可以用于数据库同步备份,于是就准备这样弄了. 花了一点时间,终于弄出来了.记录备用: Linux数据库备份设置部分:(第一次设置) 1、数据库版本 两台服务器数据库版本

项目已经完成,后期就是维护之类的了.当然会包括数据库的维护.

MySql有个功能Replication正好可以用于数据库同步备份,于是就准备这样弄了.

花了一点时间,终于弄出来了.记录备用:

Linux数据库备份设置部分:(第一次设置)

1、数据库版本

两台服务器数据库版本最好都保持一致,避免因版本问题带来的不可预知的错误。

2、设置备份帐户名以及密码

数据库都安装好以后,在两台服务器都设置一个专门用于备份的帐号并授权(最好授予全部权限),两个帐号密码最还也设置为一样的。这里在主从数据库都添加了用于备份的帐户名,帐户名都为 backup,密码123123。

3、同步前数据拷贝

从主数据库把数据备份到备份数据库上,可以用navicat的Data Transfer,需要建立两个连接,分别在主、从数据库上,在备份数据库上建立新数据库,与需要备份的主数据库同名,注意编码规则什么的保持一致,然后, 从主数据连接这里选中主数据库,用数据功能把数据传输到备份数据库上,保持两个数据库的数据一致性。

也可以使用其他方法,保证备份前主从数据库的数据一致性就行。

4、主数据库设置

修改主数据库配置文件,在Linux系统中,一般是在 /etc/my.cnf

在[mysqld]下面添加

server-id=1 #这个ID必须是唯一的,主数据库在前

log-bin=mysql-bin #记录日志

binlog-do-db=productInfo #记录日志的数据库名,就是要备份的数据库

修改完主数据库的配置后,保存,退出,重启主数据库服务。

然后在主数据库执行一句sql命令(数据库里有函数用来完成特定功能)

set globallog_bin_trust_function_creators=1;(MySql函数开启日志的方法,默认是不开启的,主从备份需要开启二进制log,而且mysql官方不建议这个写在配置文件里,所以用sql来执行)

5、从数据库设置

5.1 修改从数据库配置文件

在Linux系统中,一般是在 /etc/my.cnf

在[mysqld]下面添加

server-id=2 #从数据库ID

relay-log=mysqld-relay-bin #从数据库的日志文件

replicate-do-db=productInfo #需要备份的数据库名

修改完配置文件后,保存,退出,重启从数据库服务。

5.2 从数据库sql设置命令

接下来的操作需要用sql命令来完成。

用MySql的root用户进入,执行sql命令:

stop slave;

CHANGE MASTER TO MASTER_HOST='192.168.1.200',MASTER_USER='backup', MASTER_PASSWORD='123123',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=98;

start slave;

退出mysql状态,在linux操作状态下去查看刚才的slave启动是否成功。

在目录 /usr/local/mysql/data 下的*.err,用cat命令查看这个错误日志文件,根据刚才启动slave的时间,在最后几行,看是否有错误提示。

因为MASTER_LOG_POS=98 这个属性表示的是从数据库开始备份的起始位置(从主数据库日志读取)一般不会第一次就很准确,需要查看错误提示后修改。

错误日志类似下面这样:(供参考)

080922 10:29:01 [Note] Slave SQL threadinitialized, starting replication in log 'mysql-bin.000778' at position2874108, relay log './relay-bin.003287' position: 2874245

080922 10:29:01 [Note] Slave I/O thread:connected to master 'replication@192.168.0.10:3306', replication started in log'mysql-bin.000778' at position 2874108

080922 10:29:01 [ERROR] Error reading packetfrom server: Client requested master to start replication from impossibleposition ( server_errno=1236)

080922 10:29:01 [ERROR] Got fatal error1236: 'Client requested master to start replication from impossible position'from master when reading data from binary log

我们上面的起始位置是98,如果不对,按照错误提示的修改(最好主数据库没有人操作,这样主数据库日志记录位置不会变动)

修改方法:

mysql用root用户进入,执行sql命令:

stop slave;

CHANGE MASTER TOMASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=从错误日志上提示的pos;

start slave;

这样的步骤可能需要重复不止一次。

当查看*.err,最后记录的日志提示都是note以及wrning没有error时,表示从数据库与主数据库同步成功。

6、设置完成后检查

在主数据库上做一些 insert update delete 这样的操作,然后检查从数据库数据是否发生改变。

Linux数据库重启时的设置:

当主数据库需要重启时,需要在重启后做如下操作。

1、主数据库设置.

主数据库数据用navicat的data transfer功能备份到从数据库。

查看最新的日志记录文件,第一次是mysql-bin.000001,第二次是mysql-bin.000002,以此类推。

查看目录 /usr/local/mysql/data 下面,主数据库ip地址 192.168.1.200

了解了最新的日志记录文件后,记下来(修改从数据库slave备份设置需要)。

然后在主数据库执行一句sql命令

set global log_bin_trust_function_creators=1;(MySql函数开启日志的方法,默认是不开启的,主从备份需要开启二进制log,而且mysql官方不建议这个写在配置文件里,所以用sql来执行)

2、从数据库设置

mysql用root用户进入,执行sql命令:(假定主数据库最新的日志文件是mysql-bin.000005)

stop slave;

CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000005',MASTER_LOG_POS=98;

start slave;

然后参考初次设置从数据库slave的方法,查看 *.err,看是否启动同步成功,如果没有同步成功需要多重复几次,主要是根据错误日志的提示,修改MASTER_LOG_POS的值。

3、备注:

主从同步错误调整可参考http://www.linuxidc.com/Linux/2012-02/54729.htm

豆掰娱乐还为您提供以下相关内容希望对您有帮助:

手游架设 可以数据库设置

传奇手游(Linux服务器环境)数据库安装:选择MySQL 5.6版本,通过宝塔面板实现可视化管理。安全设置:修改root账户默认密码(示例为pwd123456),建议实际部署时使用强密码。数据初始化:导入服务端提供的SQL脚本,确保表结构与初始数据完整。连接优化:配置字符集为utf8mb4(支持完整Unicode字符)

linux服务器mysql数据库怎么配置

下载后放到Liunx服务器中,如图所示 安装MySQL Server的rpm包 rpm -ivh MySQL-server-5.6.21-1.linux_glibc2.5.x86_.rpm 安装过程如图所示 安装完成后会生成root用户的随机密码,请使用“cat /root/.mysql_secret”或类似命令进行查看。安装MySQL客户端 rpm -ivh MySQL-client-5.6.21-1.linux...

如何进行数据库备份和恢复 mysql

1.1 备份 开始菜单 | 运行 | cmd |利用“cd /Program Files/MySQL/MySQL Server 5.0/bin”命令进入bin文件夹 | 利用“mysqldump -u 用户名 -p databasename >exportfilename”导出数据库到文件,如mysqldump -u root -p voice>voice.sql,然后输入密码即可开始导出。1.2 还原 进入MySQL Comm...

微擎使用方法?

将下载的安装包解压后,将其内容上传到你的项目文件夹中。通过浏览器访问你的项目地址,开始安装过程。安装过程中,系统会引导你完成一系列步骤,包括数据库配置、管理员账号设置等。按照系统提示进行操作,直至安装完成。配置和使用:安装完成后,登录微擎后台管理系统。在后台管理系统中,你可以进行模块安装...

第二十二章:走进Linux世界——开源数据库Mysql — 数据库管理(命令...

重启mysql服务,无密码登录:使用systemctl restart mysqld命令重启mysql服务。使用mysql -uroot命令无密码登录mysql。修改root用户密码:登录后,执行UPDATE mysql.user SET authentication_string = PASSWORD('新密码') WHERE user = 'root' AND host = 'localhost';命令设置新密码(注意:在MySQL 5.7及...

怎么在linux上安装mysql

第三种方式是下载最新的mysql-5.6.27-linux-glibc2.5-i686.tar.gz,解压缩后,手动配置。主要包括配置:增加mysql用户和群组;拷贝my-default.inf文件为my.inf到/etc/下;安装并初始化/mysql-5.6.27/scripts/mysql_install_db --user=mysql --basedir=/... --datadir=/...;增加到服务...

mysql是什么数据库

1. 基础属性与架构MySQL采用关系型数据库模型,将数据分散存储于多个表中,通过表间关联提升查询效率与灵活性。其核心语言为标准SQL(结构化查询语言),支持复杂的数据操作与事务管理。作为开源软件,MySQL遵循GPL协议,提供社区版(免费)与商业版(付费)双授权模式,兼顾个人开发者与企业级需求。2. 性能...

linux下部署nacos

在Linux下部署Nacos的步骤如下:一、准备工作 下载Nacos:从GitHub下载Nacos项目,根据需求选择相应的版本文件,例如2.1.0版本。 安装JDK:确保服务器上已安装JDK,且版本符合Nacos要求。二、单机部署1. 解压项目:将下载的Nacos项目解压到服务器上。2. 准备数据库: 确保MySQL数据库版本为5.6.5及...

0基础教你部署大猿人中控系统最新版!

设置新建站点的运行目录为“/Public”,并将伪静态设置为“thinkphp”。导入源码文件压缩包内的SQL5.6.sql.gz文件至数据库。安装进程守护管理器:访问“软件商店”,搜索并安装“进程守护管理器3.0.3 stable”。在软件设置中添加6个守护进程,分别配置名称、命令和进程目录,确保所有进程都在网站的/...

织梦cms数据库链接不上怎么解决

验证数据库服务运行状态通过系统服务管理工具(如Windows任务管理器或Linux的systemctl status mysql命令)确认数据库服务(如MySQL)是否处于“运行中”状态。若服务未启动,需手动启动并设置开机自启;若缺乏权限,需联系服务器管理员或托管商协助处理。检查防火墙与端口访问权限服务器防火墙可能阻止外部访问数据...

Copyright © 2019- doubaijiu.com 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务