Linux中通过rpm安装升级mysql,替换原来用tar包安装的mysql

1.备份数据库和配置文件

升级之前,先把整个数据库备份一下,有备无患

mkdir /mysql-copy  建立一个文件夹存放备份文件
cd mysql-copy
mkdir init.d 

#备份数据库数据
mysqldump -u root  -p  --all-databases  --default-character-set=utf8  >  /mysql-copy/databases.sql

#备份my.cnf文件
cp /etc/my.cnf /mysql-copy

#备份/init.d/mysql文件
cp /etc/init.d/mysql /mysql-copy/init.d/

2.查看mysql文件路径,删除文件

#停止mysql服务
service mysql stop
有些是
service mysqld stop

通过 whereis mysql 查看mysql的文件路径,下图是rpm安装的默认路径,如果之前通过tar包方式安装的目录和下图的一样,则这些文件都不用删除,留着就行。

如果通过tar方式安装的路径不同,一般都是/usr/local/mysql这个路径,mysql这个文件不删除不影响之后的操作。

但是要删除的话,注意里面是否有data数据库文件,把data文件备份。

可以通过 find / -name mysql 命令全盘搜索mysql文件,删除带lib64share的文件

Linux中通过rpm安装升级mysql,替换原来用tar包安装的mysql_第1张图片

删除/etc/my.cnf和/etc/init.d/mysql

3.卸载mariadb,安装mysql

centos7会自带一个mariadb,是mysql的一个分支,需要清理掉

查看是否已安装

[root@localhost jwzt]# rpm -qa |grep -i mariadb
mariadb-libs-5.5.56-2.el7.x86_64

卸载命令

rpm -e --nodeps mariadb-libs

4.rpm安装mysql

rpm方式安装参考:Linux中用rpm文件安装mysql

 解压rpm安装包:

tar -xvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar

按顺序安装:

# rpm -ivh mysql-community-common-5.7.25-1.el6.x86_64.rpm
 
# rpm -ivh mysql-community-libs-5.7.25-1.el6.x86_64.rpm
 
# rpm -ivh mysql-community-client-5.7.25-1.el6.x86_64.rpm
 
# rpm -ivh mysql-community-server-5.7.25-1.el6.x86_64.rpm

安装完后通过cat /var/log/mysqld.log到日志中看初始密码

Linux中通过rpm安装升级mysql,替换原来用tar包安装的mysql_第2张图片

 5.启动mysql

service mysql start
或者
service mysqld start

进入mysql,输入初始密码:

mysql -uroot -p
#修改mysql密码
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.02 sec)
mysql> 

6.查看数据

如果之前的安装文件目录和rpm默认的路径相同,那么mysql的密码可以还是之前的密码,如果不对则输入初始密码。

通过show databases;查看原先的数据库数据在不在。

数据不在,通过两种方式还原数据:

方式一:

停止mysql服务,修改/etc/my.cnf文件中的data路径,改为你之前的data路径,或者你备份的data路径。

ps:如果你之前的数据库的my.cnf中有什么设置参数,直接复制进来。

Linux中通过rpm安装升级mysql,替换原来用tar包安装的mysql_第3张图片

 方式二:

把第一步备份的数据库文件(/mysql-copy/databases.sql)导入,即可:

source 后面跟数据库文件路径。

Linux中通过rpm安装升级mysql,替换原来用tar包安装的mysql_第4张图片

你可能感兴趣的:(mysql)