我这里直接使用MySQL Yum存储库的方式快速安装:
抽象
MySQL Yum存储库提供用于在Linux平台上安装MySQL服务器,客户端和其他组件的RPM包。这些软件包还可以升级和替换从Linux发行版本机软件存储库安装的任何第三方MySQL软件包,如果可以从MySQL获得它们的替代品。
MySQL Yum存储库支持以下Linux发行版:
-
基于EL6和EL7的平台(例如,Oracle Linux,Red Hat Enterprise Linux和CentOS的相应版本)
-
Fedora 29和30
注意
并非所有这些Linux发行版都支持所有版本的MySQL。有关 如何确定Linux发行版是否支持特定版本的信息,请参阅选择发布系列。
完全安装MySQL的步骤
1. 清理原有的mysql
rpm -qa | grep mysql
#可能的显示情况如下
#mysql-community-libs-8.0.12-1.el7.x86_64
#mysql80-community-release-el7-1.noarch
#mysql-community-client-8.0.12-1.el7.x86_64 #mysql-community-common-8.0.12-1.el7.x86_64 #mysql-community-server-8.0.12-1.el7.x86_64 #通过下面的命令进行删除 yum remove mysql-xxx-xxx- #根据自身的需求删除mysql的配置文件信息 rm -rf /var/lib/mysql
删除CentOS7默认的数据库mariadb
rpm -qa | grep mariadb
#查找mariadb
#可能出现的结果mariadb-libs-5.5.56-2.el7.x86_64
#将查找出来的结果进行强制删除
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
-
添加MySQL Yum存储库
首先,将MySQL Yum存储库添加到系统的存储库列表中。跟着这些步骤:
-
访问https://dev.mysql.com/downloads/repo/yum/上的MySQL Yum存储库下载页面 。
-
选择并下载适用于您的平台的发行包,如果是现在到本地之后需要上传到Linux指定路径
-
安装yum源
yum localinstall mysql80-community-release-el7-3.noarch
-
更新yum源
yum clean allyum makecache
- 开始安装MySQL
yum install mysql-community-server
-
启动MySQL
systemctl start mysqld
启动成功后可以查看初始化密码随机生成的
cat /var/log/mysqld.log | grep password
通过使用生成的临时密码登录并为超级用户帐户设置自定义密码,尽快更改root密码:
mysql -uroot -p
输入上述密码,进入mysql
修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPass';
注意
MySQL的 validate_password 插件默认安装。这将要求密码包含至少一个大写字母,一个小写字母,一个数字和一个特殊字符,并且密码总长度至少为8个字符。
远程连接
以上安装好之后,在服务器端使用正常,但是通过桌面工具,例如:Navicat连接,发现连接失败。
以上是yum在线安装的方式,还有一种常用的是本地安装包方式,后面有机会再说。不过我还是感觉这种安装比较方便
安装出现的问题总结:
- 解决MySQL登录报ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)的问题
使用mysql -uroot -p,然后输入密码登录mysql时,出现了如下错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
一般这个错误是由密码错误引起,解决的办法自然就是重置密码
解决方案如下:
1.停止mysql数据库:systemctl stop mysqld
2.用以下命令启动MySQL,以不检查权限的方式启动:
mysqld --skip-grant-tables &
此时又报了一个错误:2018-02-01T02:52:55.093724Z 0 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
执行命令:mysqld --user=root --skip-grant-tables &
3.登录mysql:mysql -uroot或mysql
4.更新root密码
mysql5.7以下版本:UPDATE mysql.user SET Password=PASSWORD('123456') where USER='root';
mysql5.7版本:UPDATE mysql.user SET authentication_string=PASSWORD('123456') where USER='root';
5.刷新权限:flush privileges;
6.退出mysql:exit或quit
7.使用root用户重新登录mysql
mysql -uroot -p
Enter password:<输入新设的密码123456>