CentOS下MySQL双机热备配置

在集成项目中需要应对不同环境下的安装配置,主流操作系统大致可以分为三种:Linux、Windows以及UNIX。其中Linux备受青睐的主要原因有两个:

首先,Linux作为自由软件有两个特点:一是它免费提供源码,二是爱好者可以按照自己的需要自由修改、复制和发布程序的源码,并公布在Internet上。这就吸引了世界各地的操作系统高手为Linux编写各种各样的驱动程序和应用软件,使得Linux成为一种不仅只是一个内核,而且包括系统管理工具、完整的开发环境和开发工具、应用软件在内,用户很容易获得的操作系统。

其次,究其根本,Linux是一个UNIX系统变种,因此也就具有了UNIX系统的一系列优良特性,UNIX上的应用可以很方便地移植到Linux平台上,这使得UNIX用户很容易掌握Linux。

基于Linux的安全可靠、效率高、免费、良好的网络支持、与UNIX完全兼容等方面的考虑,Linux算是最常用的一种。这样,在项目中就会有在Linux下安装据库的需求,例如OracleMySQL等。本文主要介绍在Linux环境下安装MySQL据库的两种方式,以及MySQL数据库的相关配置步骤,其中常见的一些问题也会进行说明,最后会展示一种比较常见的MySQL数据库的备份方式——双机热备。

2  预期读者

广大技术爱好者

3  环境信息

操作系统:CentOS 6.4

MySQL版本为MySQL5.6

4  名词解释

Linux:Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

CentOS(CommunityEnterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。

MySQL:MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MYISAM:MySQL两种常见的存储引擎之一,特点是表数据文件和表索引文件都是独立存放,适合记录少于2000万以下、并发量不是很高的环境,适合简单的查询,不支持事务,容易出现数据丢失,表损坏,经常需要修复,修复往往也导致数据丢失,适合读多写少的环境

INNODB:MySQL两种常见的存储引擎之一,特点是表数据文件和表索引文件是共同一个文件,适合大规模数据,小规模的数据反而效率不高,适合并发量高的环境、复杂的查询,支持事务,支持数据自动修复,保证了数据丢失最少

5  操作步骤 5.1  安装方式

在CentOS上安装MySQL的方式大致可以分为两类,一种是网络环境通畅的情况下,可以通过YUM库联网安装,另一种是通过本地上传MySQL介质进行安装。

5.1.1   yum远程安装

查看CentOS自带MySQL是否已安装

指令:yum list installed | grep mysql

首先需要卸载依赖文件

指令:例如yum -y remove mysql-libs.x86_64

若有多个依赖文件则依次卸载,当结果显示为Complete!即卸载完毕

查看yum库上的MySQL版本信息

指令:yum list | grep mysqlyum -y list mysql*

CentOS系统需要正常连接网络

通过yum安装MySQL

指令:yum -y install mysql-server mysql mysql-devel

安装时会显示有冲突文件,移除冲突的文件

指令:例如yum -y remove MySQL-client-advanced-5.6.22*

查询是否已安装MySQL

rpm -qa|grep -imysql

-i忽略大小写

成功安装后,启动MySQL失败,需要查看一下MySQL的日志信息来定位错误原因

less/var/log/mysqld.log

启动MySQL服务,更改数据库密码

mysql>update user set  password=password('YouPassword') where user='root';

mysql>FLUSH PRIVILEGES;

 

远程连接时,防火墙启用端口号

指令:iptables -I INPUT -p tcp--dport 3306 -j ACCEPT

5.1.2   本地介质安装

首先下载MySQL安装包

mysql-advanced-5.6.23-linux-glibc2.5-x86_64.tar.gz

解压并放到安装文件夹下,其中需要使用的是

MySQL数据库:MySQL-server-5.6.22-1.linux_glibc2.5.x86_64.rpm

MySQL客户端:MySQL-client-5.6.22-1.linux_glibc2.5.x86_64.rpm

安装前先检查是否已安装MySQL

指令:rpm -qa | grep mysql

如果之前有安装过MySQL,需要删除已安装的MySQL

指令:例如rpm -e --nodeps mysql-libs-5.1.47-4.el6.i686 

再次检查是否已安装MySQL

安装MySQL服务端

指令:rpm -ivh MySQL-server-5.6.22-1.linux_glibc2.5.x86_64.rpm

Preparing...  ########################################### [100%]

1:MySQL-server  ########################################### [100%]

A RANDOM PASSWORD HAS BEEN SET FOR THE  MySQL root USER !

You will find that password in  '/root/.mysql_secret'.

You must change that password on your  first connect,

no other statement but 'SET PASSWORD'  will be accepted.

See the manual for the semantics of the  'password expired' flag.

Also, the account for the anonymous user  has been removed.

In addition, you can run:

/usr/bin/mysql_secure_installation

which will also give you the option of  removing the test database.

This is strongly recommended for  production servers.

See the manual for more instructions.

Please report any problems at  

The latest information about MySQL is  available on the web at

Support MySQL by buying support/licenses  at

New default config file was created as  /usr/my.cnf and

will be used by default by the server  when you start it.

You may edit this file to change server  settings

 

检查MySQL 3306端口是否打开了

指令:netstat –nat

发现还没有3306的端口,说明MySQL服务还没有启动

启动MySQL服务

指令:service mysql start

Starting MySQL.......... SUCCESS!

 

启动成功后,再次检查3306端口号

安装客户端

指令:rpm -ivh MySQL-client-5.6.22-1.linux_glibc2.5.x86_64.rpm

Preparing...  ########################################### [100%]

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/170db8402583b196c98e02b1a8176407.html