Linux内核基于Centos6的删除低版本Mysql数据库且安装5.6版本Mysql以及使用xtrabackup对百度RDS进行热备份步骤全解!(还有不会的你来找我)

注意:本博客Mysql版本为5.6本版!

情景一:服务器已有数据库版本较低,需要进行彻底删除(如果是新服务器,该情景直接略过,当然你想执行也可以,那就一步步照着执行就好)

步骤1:rpm -qa|grep -i mysql  该命令可查看服务器之前是否安装过数据库Linux内核基于Centos6的删除低版本Mysql数据库且安装5.6版本Mysql以及使用xtrabackup对百度RDS进行热备份步骤全解!(还有不会的你来找我)_第1张图片

我的服务器安装过所以会有如下信息,如果命令行过后没有任何显示说明没有安装过,为了保险起见,您也可以进行如下删除操作

步骤2:rpm -ev  *  (*代表的是使用rpm -qa|grep -i mysql查询出来的mysql安装信息,一定要全部删除完,听话)

步骤3:查找有关mysql的所有文件:命令行:find   /  -name mysql

Linux内核基于Centos6的删除低版本Mysql数据库且安装5.6版本Mysql以及使用xtrabackup对百度RDS进行热备份步骤全解!(还有不会的你来找我)_第2张图片

如果你的服务器之前已经运行有项目,项目下的有关mysql的文件可略过!其余的统统删除掉!

步骤4:干掉etc下的mysql配置文件:rm -rf /etc/my.cnf

步骤5:该步要确保当前用户为root用户!(如果不换切换用户,请自行百度)

            命令(1):yum install yum-utils(安装yum相关工具包);

            命令(2):yum clean all(清楚yum的所有缓存);

            命令(3):yum clean headers (清除header);

            命令(4):yum clean packages (清除下载的rpm包);

            命令(5):/usr/sbin/yum-complete-transaction –cleanup-only (清理未完成事务)最重要的一步!

截止到这一步,服务器上的mysql相关安装一定是相当干净了!使用yum也不会出现如下警告了:

There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.



情景二:安装mysql5.6版本

步骤1:检查是否存在mysql,命令: yum list installed | grep mysql

Linux内核基于Centos6的删除低版本Mysql数据库且安装5.6版本Mysql以及使用xtrabackup对百度RDS进行热备份步骤全解!(还有不会的你来找我)_第3张图片

如果你的服务器上存在mysql,会存在如红框内一样的内容!

步骤2:删除上图红框内文件(没有内容显示的可以跳过该步骤):yum -y remove *(*代表你需要删除的所有文件,您可不要输入*,您要输入的是文件名,删除一个文件执行一条命令)

步骤3:下载mysql数据库文件(这里以mysql 5.6为例),命令行:wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm 

步骤4:安装mysql的yum源文件,命令行:rpm -ivh mysql-community-release-el6-5.noarch.rpm

步骤5:yum repolist all | grep mysql  (该步骤为查看是否有可用安装版本)

步骤6:命令行:yum install mysql-community-server  (安装mysql)

步骤7:命令行:service mysqld start(mysql启动)

(*注意:启动的时候有可能出现:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

解决该问题的方法为:

步骤1:cd /var/lib/mysql/mysql.sock (如果没有跳过步骤二)

步骤2:rm -rf  /var/lib/mysql/mysql.sock

步骤3:使用/etc/init.d/mysqld start (有些用户有可能是用/etc/init.d/mysql start。执行此命令会生成mysql.sock)

步骤8:命令行:(1)chkconfig –list | grep mysqld       

                      (2)chkconfig mysqld on 

(步骤8是为了将mysql设置为开机启动服务)



情景三:安装xtrabackup

步骤1:安装percona依赖库:

命令行:yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm

步骤2:检查是否安装成功:

命令行:yum list | grep percona   (出现如下信息即可以安装成功。如果出现信息,请上翻查看情景下的清楚yum系列操作,再回到这里进行操作)

步骤3:安装percona,命令行: yum install percona-xtrabackup-24

如果有提示安装失败:Package: percona-xtrabackup-24-2.4.12-1.el6.x86_64 (percona-release-x86_64)   Requires: libev.so.4()(64bit),可以如下操作:在http://rpmfind.net/linux/rpm2html/search.php上直接搜索该包libev-4.04-2.el6.x86_64.rpm,ftp上传到根目录下安装,下载上传后在linux执行:rpm -ivh libev-4.04-2.el6.x86_64.rpm,请注意名称是否一致,不一致一定要更改);

步骤4:安装xtrabackup 命令行:yum install percona-xtrabackup-24

                                                        (执行到这一步,就已经可以进行数据库的备份恢复啦!)



情景四:恢复数据库

步骤1:下载好自己RDS上的数据库文件(一般是.xb.gz当后缀名,前部分为一串随机数,这里我们进行改名为backup.gz(注意保留.gz,将.xb也改掉))

步骤2:通过ftp工具上传到linux服务器的根目录下,并执行如下命令

mkdir -p /home/mysql/datadir && gzip -d -c backup.gz | xbstream -x -C /home/mysql/datadir(/home/mysql/datadir 该文件路径可以根据自己实际情况进行更改)

步骤3:执行热物理恢复:innobackupex --defaults-file=/home/mysql/datadir/backup-my.cnf --apply-log /home/mysql/datadir(注意!我用红色标记出来的地方要与步骤二里的文件路径保持一致!)

步骤4:更改/etc/my.cnf下datadir的指向(执行该步骤时,先将数据库关闭)

更改/etc/my.cnf下datadir的指向,应指向到步骤2中你指定的文件路径,比如步骤2,我的文件路径是/home/mysql/datadir,这里就将datadir的指向改为/home/mysql/datadit;并且在【mysqld】下添加skip-grant-tables,跳过数据库验证;

步骤5:启动数据库

1:如果你的数据库启动失败,请先给mysql赋权能操作步骤2中的文件 chown -R mysql /home/mysql/datadir

2.如果数据库启动成功,但是你通过mysql -u  -p依旧不能访问,采用/etc/init.d/mysqld restart重启服务器,然后直接输入mysql即可进入命令行操作,其他的还不会,你就不要做编程了!

你可能感兴趣的:(程序员,码农)