一、 概述
本文简要说明在CentOS7.8 64位系统上安装MySql8数据库服务。
二、 下载
Mysql8下载地址:
https://dev.mysql.com/downloads/mysql/
软件包名称:mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar
下载成功后,将软件包通过FileZilla上传到服务器目录:/usr/local/,并解压到mysql文件夹。
解压命令:tar –xvf mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar
解压成功后,mysql文件夹内容为:
三、 安装
3.1通过执行命令 rpm -qa | grep mariadb 命令查看 mariadb 的安装包
3.2 通过执行命令 rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps 命令装卸 mariadb
3.3通过执行命令 rpm -ivh mysql-community-common-8.0.22-1.el7.x86_64.rpm --nodeps --force命令安装 common
3.4通过执行命令 rpm -ivh mysql-community-common-8.0.22-1.el7.x86_64.rpm --nodeps --force命令安装 common
3.5通过执行命令rpm -ivh mysql-community-libs-8.0.22-1.el7.x86_64.rpm --nodeps --force命令安装libs
3.6通过执行命令rpm -ivh mysql-community-libs-8.0.22-1.el7.x86_64.rpm --nodeps --force命令安装libs
3.7通过执行命令rpm -ivh mysql-community-client-8.0.22-1.el7.x86_64.rpm --nodeps –force安装client
3.8 通过执行命令 rpm -ivh mysql-community-server-8.0.22-1.el7.x86_64.rpm --nodeps --force安装server
3.9通过以下命令,完成对 mysql 数据库的初始化和相关配置:
3.9.1修改/etc/my.cnf,在最后增加一行:lower-case-table-names=1
3.9.2 执行命令:mysqld --initialize --user=mysql --lower-case-table-names=1
3.9.3配置权限:chown mysql:mysql /var/lib/mysql -R;
3.9.4 启动Mysql服务:systemctl start mysqld.service;
3.9.5将Mysql服务加入系统:systemctl enable mysqld;
3.10 通过 cat /var/log/mysqld.log | grep password 命令查看数据库的密码:
[root@localhost mysql]# cat /var/log/mysqld.log | grep password
2020-12-02T06:59:49.362029Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Se>4_hG.TVgP
[root@localhost mysql]#
3.11 通过 mysql -uroot -p 敲回车键进入数据库登陆界面:
输入刚刚查到的密码,进行数据库的登录。
3.12修改登录密码:
通过执行命令:
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’; 命令来修改密码: (最后的123456是新密码)
3.13通过执行命令 exit; 命令退出 MySQL,然后通过新密码再次登陆
3.14重新登录后,通过执行以下命令,进行远程访问的授权
create user ‘root’@‘%’ identified with mysql_native_password by ‘123456’;
grant all privileges on . to ‘root’@‘%’ with grant option;
flush privileges;
通过 exit; 命令退出 MySQL。
3.15 通过以下命令,关闭 firewall
systemctl stop firewalld.service;
systemctl disable firewalld.service;
systemctl mask firewalld.service;
三、客户端连接Mysql服务
打开Navicat for Mysql软件,点击“连接”选择Mysql:
在弹出的窗口输入连接信息:
用户名是root,密码是前面设置的密码123456。
四、免卸载离线升级mysql
先下载安装包:
mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar;
查看版本:
mysql --version
暂停mysql服务:
systemctl stop mysql.service
解压安装包:
tar -xvf mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar
升级安装:
rpm -Uvh mysql-community-*
如果报错:
[root@VM-0-13-centos home]# rpm -Uvh mysql-community-*
warning: mysql-community-client-8.0.32-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
error: Failed dependencies:
perl(JSON) is needed by mysql-community-test-8.0.32-1.el7.x86_64
perl(Test::More) is needed by mysql-community-test-8.0.32-1.el7.x86_64
[root@VM-0-13-centos home]#
分别执行:
yum install perl-Data-Dumper perl-JSON -y
yum install perl-Test-Simple -y
重新执行:
rpm -Uvh mysql-community-*
执行完成后,查看mysql版本:
mysql --version
重启mysql:
systemctl start mysql
升级完成。
五、备份、恢复数据库
备份数据库sfms-test:
mysqldump -u root -p sfms-test > /home/data/mysqlData/sfms-test.sql ;
输入密码就会开始备份。
恢复数据库(前提,原来的数据库已经删除,新加一个同名数据库testDB),先登录:
mysql -u root -p
输入密码,登陆后,执行命令:
mysql> use testDB;
mysql> source /home/data/mysqlData/sfms-test.sql;