CentOS 6.5 使用RPM安装 MySQL5.6.24及Xtrabackup

一.安装CentOS6.5_x64

 1.设置网卡:自动连接

 2.使用swap创建交换分区:2048M

 3.使用"ext4"创建"/"分区

 4.选择min安装

 5.进入"/"目录,创建data目录

[root@localhost ~]# cd /

[root@localhost /]# mkdir data

二.挂载数据盘

 1.查看数据盘。注意:在没有分区和格式化数据盘之前,使用 df -h 命令是无法看到数据盘的。,发现 /dev/sdb

[root@localhost /]# fdisk -l

 2.对数据盘进行分区。根据提示,依次输入 n,p,1,两次回车,wq,分区就开始了。

[root@localhost /]# fdisk /dev/sdb

 3.查看新的分区。新分区 /etc/sdb1 已经创建好。

[root@localhost /]# fdisk -l

 4.对新分区进行格式化。

[root@localhost /]# mkfs.ext4 /dev/sdb1

 5.插入挂载信息

[root@localhost /]# vi /etc/fstab

/dev/sdb1               /data                   ext4    defaults        0 0

 6.挂载数据盘

[root@localhost /]# mount -a

 7.进入 "/data" 目录,创建相关目录

[root@localhost /]# cd /data

[root@localhost data]# mkdir mysql

[root@localhost data]# mkdir backup

[root@localhost data]# mkdir tools

[root@localhost data]# cd /data/mysql

[root@localhost mysql]# mkdir data

三.安装MySQL

 1.下载MySQL5.6.24安装包,使用SFTP上传至:/data/mysql/tools

    MySQL-server-advanced-5.6.24-1.el6.x86_64.rpm,

    MySQL-client-advanced-5.6.24-1.el6.x86_64.rpm,

    MySQL-devel-advanced-5.6.24-1.el6.x86_64.rpm

 2.安装 vim

[root@localhost mysql]#yum install vim -y

 3.查看下是否有系统自带mysql的rpm包,如果有,需要删除自带的旧rpm包。

[root@linuxidc mysql]# rpm -qa | grep mysql
mysql-libs-5.1.71-1.el6.x86_64
[root@linuxidc mysql]# yum -y remove mysql-libs-5.1*
[root@linuxidc mysql]# rpm -qa | grep mysql
[root@linuxidc mysql]#

 4.安装libaio

[root@linuxidc tools]# yum install libaio -y

 5.安装三个rpm软件包。
[root@localhost tools]# rpm -ivh MySQL-server-advanced-5.6.24-1.el6.x86_64.rpm

......

[root@localhost tools]# rpm -ivh MySQL-client-advanced-5.6.24-1.el6.x86_64.rpm
......
[root@localhost tools]#  rpm -ivh MySQL-devel-advanced-5.6.24-1.el6.x86_64.rpm

......

 6.修改配置文件位置。
[root@localhost tools]# cp /usr/share/mysql/my-default.cnf /etc/my.cnf

[root@localhost tools]# vim /etc/my.cnf

#做如下配置

[client]
  port = 3306
  default-character-set=utf8

[mysqld]
  datadir = /data/mysql/data
  port = 3306
  character_set_server=utf8
  character_set_client=utf8
  collation-server=utf8_general_ci
#linux下mysql安装完后是默认:表名区分大小写,列名不区分大小写; 0:区分大小写,1:不区分大小写
  lower_case_table_names=1
##设置最大连接数,默认为 151,MySQL服务器允许的最大连接数16384
  max_connections=300

[mysql]
  default-character-set = utf8

 7.初始化MySQL及修改MySQL默认的root密码。

[root@localhost tools]# rm -rf /usr/my.cnf

[root@localhost tools]# /usr/bin/mysql_install_db

[root@localhost tools]# chown -R mysql:mysql /data/mysql/data

[root@localhost tools]# vim /etc/selinux/config

 把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器

[root@localhost tools]# init 6

[root@localhost ~]# rm -rf /usr/my.cnf

[root@localhost ~]# rm -rf /var/lib/mysql

[root@localhost ~]# service mysql start

 Starting MySQL. SUCCESS!

[root@localhost ~]# ps -ef | grep mysql

[root@localhost ~]# netstat -anpt | grep 3306

登录到mysql,第一次装没有密码,直接回车
[root@localhost ~]# mysql -uroot

设置root用户的密码
mysql> update user set password=password('123456') where user='root';

设置允许远程登录

mysql> use mysql;
mysql> select host,user,password from user;
mysql> update user set host='%' where user='root' and host='localhost';
mysql> flush privileges;
mysql> exit;

[root@localhost ~]# more /root/.mysql_secret

# The random password set for the root user at Tue Jun 21 22:22:53 2016 (local time): FS20vuTku9x_ecda

[root@localhost ~]# mysql -uroot -pFS20vuTku9x_ecda

mysql> SET PASSWORD = PASSWORD('123456'); 
mysql> exit

[root@localhost ~]# mysql -uroot -p123456

mysql>

8.设置MySQL服务开机自启动。
[root@localhost ~]# chkconfig mysql on
[root@localhost ~]# chkconfig mysql --list
mysql          0:off  1:off  2:on    3:on    4:on    5:on    6:off


四.安装Xtrabackup

 1.下载MySQL-shared-compat-advanced-5.6.24-1.el6.x86_64.rpm,percona-xtrabackup-2.2.9-5067.el6.x86_64.rpm

  并上传到/data/tools/

[root@localhost ~]# cd /data/tools/

 2.安装MySQL-shared-compat-advanced-5.6.24-1.el6.x86_64.rpm
[root@localhost tools]# rpm -ivh MySQL-shared-compat-advanced-5.6.24-1.el6.x86_64.rpm

 3.安装percona-xtrabackup-2.2.9-5067.el6.x86_64.rpm

[root@localhost tools]# rpm -ivh percona-xtrabackup-2.2.9-5067.el6.x86_64.rpm

warning: percona-xtrabackup-2.2.9-5067.el6.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID cd2efd2a: NOKEY
error: Failed dependencies:
    perl(DBD::mysql) is needed by percona-xtrabackup-2.2.9-5067.el6.x86_64
    perl(Time::HiRes) is needed by percona-xtrabackup-2.2.9-5067.el6.x86_64
    rsync is needed by percona-xtrabackup-2.2.9-5067.el6.x86_64
[root@localhost tools]# yum -y install perl-Time-HiRes perl-DBD-MySQL rsync

[root@localhost tools]# rpm -ivh percona-xtrabackup-2.2.9-5067.el6.x86_64.rpm

五.Xtrabackup的使用

[root@localhost ~]# cd /data/backup/

 1.使用innobackupex完整备份,需要登陆mysql

[root@localhost backup]# innobackupex --user=root --password=123456 /data/backup

打包备份文件夹
[root@localhost ~]# tar -czvf db2016-06-24_23-42-05.tar.gz 2016-06-24_23-42-05

 2.Xtrabackup的备份压缩

Xtrabackup对备份的数据文件支持“流”功能,即可以将备份的数据通过STDOUT传输给tar程序进行归档,而不是默认的直接保存至某备份目录中。要使用此功能,仅需要使用--stream选项即可。如:

[root@localhost backup]# innobackupex --user=root --password=123456 --stream=tar  /data/backup | gzip > /data/backup/`date +%F_%H-%M-%S`.tar.gz

 3.完全恢复数据
先停止mysqld服务,然后清空数据文件目录,恢复完成后再设置权限

[root@localhost backup]# service mysqld stop

[root@localhost backup]# mv /data/mysql/data /data/mysql/data_old

[root@localhost backup]# mkdir -p /data/mysql/data

[root@localhost backup]# innobackupex --copy-back /data/backup/2016-06-24_23-42-05

[root@localhost backup]# chown -R mysql.mysql /data/mysql/data

[root@localhost backup]# service mysqld start

 4.RDS for MySQL 备份文件恢复到自建数据库

 4.1 通过 wget 工具下载备份文件

[root@localhost backup]# wget -c '内网下载地址' -O 备份文件名.tar.gz 

# -c 参数使 wget 工具在连接中断的时候尝试断点续传。
# -O 参数将下载的结果保存为指定的文件(建议使用 URL 中包含的文件名)。

 4.2 解压备份文件

 解压备份文件前,要先下载好解压工具 rds_backup_extract

 http://oss.aliyuncs.com/aliyunecs/rds_backup_extract.sh?spm=5176.7741817.0.0.HSzert&file=rds_backup_extract.sh

 解压备份文件:
[root@localhost backup]# sh rds_backup_extract -f /data/mysql/backup/hins575175_xtra_20150429091224.tar.gz -C /data/mysql/data

 4.3 配置文件修改

  由于存在的版本问题,请将解压文件 backup-my.cnf 中的 innodb_fast_checksum、innodb_page_size 、innodb_log_block_size 注释掉,保留如下

innodb_data_file_path=ibdata1:200M:autoextend
innodb_log_files_in_group=2
innodb_log_file_size=524288000

 

 4.4 恢复数据文件
[root@localhost backup] innobackupex --defaults-file=/data/mysql/data/backup-my.cnf --apply-log /data/mysql/data

 4.5 修改文件属主
[root@localhost backup] chown -R mysql:mysql /data/mysql/data

 4.6 启动mysqld进程并且登录验证
[root@localhost backup] mysqld_safe --defaults-file=/data/mysql/data/backup-my.cnf --user=mysql --datadir=/data/mysql/data &

 注意:
 恢复完成后,表 mysql.user 中是不包含 RDS 中创建的用户,需要新建。

posted on 2016-06-25 00:14  SOHOJOYCE  阅读(215)  评论(0)    收藏  举报

导航