CentOS7 YUM 在线安装MySQL5.7(附图片详解)
1、删除已安装的MySQL
检查MariaDB
[[email protected] java]# rpm -qa|grep mariadb
#删除相关依赖包(若不存在,可以跳过)
[[email protected] java]# rpm -e --nodeps mariadb-libs
#检查是否删除干净
[[email protected] java]# rpm -qa|grep mariadb
检查MySQL
[[email protected] java]# rpm -qa|grep mysql
#删除相关依赖包(若不存在,可以跳过,命令同上)
2、添加MySQL Yum Repository
从CentOS 7开始,MariaDB成为Yum源中默认的数据库安装包。在CentOS 7及以上的系统中使用yum安装MySQL默认安装的会是MariaDB。想安装官方MySQL版本,需要使用MySQL提供的Yum源。
#查看系统版本
[[email protected] java]# cat /etc/redhat-release
#选择对应的版本进行下载,CentOS 7当前在官网查看最新Yum源的下载
[[email protected] java]# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
3、安装MySQL源
[[email protected] java]# rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
#检查是否安装成功
执行成功后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo及 mysql-community-source.repo
[[email protected] java]# cd /etc/yum.repos.d/
并且通过yum repolist可以看到mysql相关资源
[[email protected] yum.repos.d]# yum repolist enabled | grep "mysql.*-community.*"
通过上面的MySQL源进行安装的话,默安装会选择MySQL 8.0版本,如果就是想要安装该版本,可以直接跳过此步骤,如果不是,比如我这里希望安装MySQL5.7版本,就需要“切换一下版本”:
[[email protected] yum.repos.d]# yum repolist all | grep mysql
切换版本
[[email protected] ~]# yum-config-manager --disable mysql80-community
[[email protected] ~]# yum-config-manager --enable mysql57-community
再次检查当前启用的MySQL仓库
[[email protected] ~]# yum repolist enabled | grep mysql
#若出现-bash: yum-config-manager: 未找到命令
解决办法:
[[email protected] ~]# yum -y install yum-utils
再次执行[[email protected] ~]# yum-config-manager --disable mysql80-community出现如下错误,是因为之前安装了python3 这里解释器为python2,需要改下文件
[[email protected] ~]# vi /usr/bin/yum-config-manager
#!/usr/bin/python -tt 改为 #!/usr/bin/python2 -tt
再次重复上述命令。
除了使用yum-config-manager之外,还可以直接编辑/etc/yum.repos.d/mysql-community.repo
文件
[[email protected] yum.repos.d]#vi /etc/yum.repos.d/mysql-community.repo
Enabled= 0 禁用;enabled=1 启用
4、安装MySQL
[[email protected] ~]# yum install mysql-community-server
一路Y,这个步骤时间会比较长,请耐心等待~
5、启动MySQL
#启动mysql服务
[[email protected] ~]# systemctl start mysqld.service
#查看mysql服务状态
[[email protected] ~]# systemctl status mysqld.service
#停止mysql服务
[[email protected] ~]# systemctl stop mysqld.service
#重启mysql服务
[[email protected] ~]# systemctl restart mysqld.service
6、修改MySQL密码
#查看初始密码
[[email protected] ~]# grep 'temporary password' /var/log/mysqld.log
#修改默认密码,(使用初始密码)
[[email protected] ~]# mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
会出现以上提示说明密码太简单。
解决办法:
#修改配置文件/etc/my.cnf ,添加validate_password=OFF,保存并重启MySQL服务
[[email protected] ~]# vi /etc/my.cnf
[[email protected] ~]# systemctl restart mysqld.service
再次重复上述修改密码操作,即可成功。
7、允许root远程访问MySQL
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
8、设置MySQL编码为utf-8
#查看编码
mysql> SHOW VARIABLES LIKE 'character%';
#设置编码,修改/etc/my.cnf
[[email protected] ~]# vi /etc/my.cnf
character_set_server=utf8
init-connect='SET NAMES utf8'
9、设置MySQL开机自启动
[[email protected] ~]# systemctl enable mysqld
[[email protected] ~]# systemctl daemon-reload
10、测试远程连接
大功告成。