升级之前,先把整个数据库备份一下,有备无患
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/
#停止mysql服务
service mysql stop
有些是
service mysqld stop
通过 whereis mysql 查看mysql的文件路径,下图是rpm安装的默认路径,如果之前通过tar包方式安装的目录和下图的一样,则这些文件都不用删除,留着就行。
如果通过tar方式安装的路径不同,一般都是/usr/local/mysql这个路径,mysql这个文件不删除不影响之后的操作。
但是要删除的话,注意里面是否有data数据库文件,把data文件备份。
可以通过 find / -name mysql 命令全盘搜索mysql文件,删除带lib64和share的文件
删除/etc/my.cnf和/etc/init.d/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
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到日志中看初始密码
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>
如果之前的安装文件目录和rpm默认的路径相同,那么mysql的密码可以还是之前的密码,如果不对则输入初始密码。
通过show databases;查看原先的数据库数据在不在。
数据不在,通过两种方式还原数据:
方式一:
停止mysql服务,修改/etc/my.cnf文件中的data路径,改为你之前的data路径,或者你备份的data路径。
ps:如果你之前的数据库的my.cnf中有什么设置参数,直接复制进来。
方式二:
把第一步备份的数据库文件(/mysql-copy/databases.sql)导入,即可:
source 后面跟数据库文件路径。