Linux安装MySQL
Linux安装MySQL,一路通畅,Bug以解决消除
目录
1.查看系统中是否已安装MySQL
要查看当前系统是否装有旧版的 MySQL。如果有,最好先卸载旧版的 MySQL,否则可能会产生冲突。输入命令:
[root@localhost local]# rpm -qa|grep -i mysql
显示如下:
[root@localhost local]# rpm -qa|grep -i mysql
mysql-libs-8.0.31-1.el7.x86_64
停止 MySQL 服务,卸载 mysql-libs-8.0.31-1.el7.x86_64,命令如下:
[root@localhost local]# service mysql stop
[root@localhost local]# rpm -e --nodeps mysql-libs-8.0.31-1.el7.x86_64
查找之前老版本 MySQL 的目录,并且删除老版本的文件和库。
[root@localhost local]# find / -name mysql
显示 MySQL 目录后,可以使用以下命令删除目录。
rm -rf 目录名
再次查找当前系统中是否安装了 MySQL。
[root@localhost local]# rpm -qa|grep -i mysql
如果没有显示结果,说明已经卸载干净,接下来直接安装 MySQL 即可。
2.安装配置MySQL
访问查看需要的版本:https://dev.mysql.com/downloads/repo/yum/
可以选择使用wget下载:(进入到/opt/software目录,一般压缩包放这个目录,没有则先行创建)
[root@localhost software]# wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
安装:
rpm -ivh mysql80-community-release-el7-1.noarch.rpm
yum install mysql-server
过程中会需要提示下载依赖,按y确认下载
异常1:密钥配置
Downloading packages: 警告:/var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-server-8.0.31-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY 从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 检索密钥 源 "MySQL 8.0 Community Server" 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。 失败的软件包是:mysql-community-server-8.0.31-1.el7.x86_64 GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
解决方案1:
执行检查命令
rpm --checksig /var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm
依次执行
gpg --export -a 3a79bd29 > 3a79bd29.asc
rpm --import 3a79bd29.asc
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
执行完重新执行安装命令
yum install mysql-server
解决方案2:
将执行命令
yum install mysql-server
改为
sudo yum install mysql-server --nogpgcheck
异常解决后,继续执行
初始化MySQL:
mysqld --initialize
MySQL 服务的操作命令是:
service mysql start | stop | restart | status
以上几个参数的意义如下:
- start:启动 MySQL 服务
- stop:停止 MySQL 服务
- restart:重启 MySQL 服务
- status:查看 MySQL 服务状态
启动 MySQL:
service mysqld start
异常2:启动报错
Job for mysqld.service failed because the control process exited with error code. See “systemctl status mysqld.service” and “journalctl -xe” for details. 错误
发现是目录权限不足导致的,执行以下命令
ll /var/lib/mysql |grep mysql
chown -R mysql:mysql /var/lib/mysql
执行完之后再次执行启动命令。
查看 MySQL 运行状态:
service mysqld status
如下显示说明运行成功:
使用命令行操作mysql
登录mysql
mysql -uroot -p
第一次默认密码为空,若它提示需要密码,你不记得有设置,则通过一下命令查看初始的随机密码
grep 'temorary password' /var/log/mysqld.log //输出mysqld密码到指定文件
查看初始密码
查看导出的文件
修改初始密码,用查看到的初始密码登入到mysql中
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
改完初始密码后登录到mysql中
授权远程登陆
use mysql;
update user set host = '%' where user = 'root';
修改完后记得刷新
mysql> FLUSH PRIVILEGES;
开启防火墙
#firewall-cmd --permanent --add-port=3306/tcp //开启端口
#firewall-cmd --reload //刷新应用
测试连接
本机使用navcat使用测试连接
大功告成!!
更多推荐
所有评论(0)