一、检查
说明: 从最新版本的linux系统开始(如 Centos7),默认的是 Mariadb而不是mysql!(mysql被闭源厂家收购,有闭源风险),而Mariadb的存在会在安装mysql时引起冲突,所以要先确认是否已经安装了Mariadb,如果已安装需卸载。
(1)检查mariadb是否安装
[root@zhangqi opt]# rpm -qa | grep mariadb
查询结果即为mariadb的安装包
mariadb-libs-5.5.65-1.el7.x86_64
(2)卸载mariadb
[root@zhangqi opt]# rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64
(3)再次检查,如果查询为空,则说明卸载mariadb已经完成
[root@zhangqi opt]# rpm -qa | grep mariadb
二、准备安装
(1)yum是管理软件安装、卸载、升级的命令工具,wget是一个下载文件的工具
[root@zhangqi opt]# yum install -y wget
跳出如下界面,则表示下载安装wget成功
Installed:
wget.x86_64 0:1.14-18.el7_6.1
Complete!
(2)下载mysql的repo源
[root@zhangqi opt]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
下载成功界面
100%[======================================>] 6,140 --.-K/s in 0s
2020-05-12 20:10:31 (760 MB/s) - ‘mysql-community-release-el7-5.noarch.rpm’ saved [6140/6140]
(3)安装mysql-community-release-el7-5.noarch.rpm包
[root@zhangqi opt]# rpm -ivh mysql-community-release-el7-5.noarch.rpm
安装成功
[root@zhangqi opt]# rpm -ivh mysql-community-release-el7-5.noarch.rpm
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-release-el7-5 ################################# [100%]
三、开始安装
(1)安装mysql
[root@zhangqi opt]# yum install mysql-server -y
当最后出现Complete!,则表示安装成功
(2)将/var/lib/mysql的拥有者改为你需要的用户,这里以root举例
[root@zhangqi opt]# chown -R root:root /var/lib/mysql
(3)安装完成后需要重启
[root@zhangqi opt]# service mysqld restart
四、配置
(1)登录mysql
[root@zhangqi opt]# mysql -u root -p
(2)修改本地登录密码
mysql> use mysql;
mysql> update user set password=password('本地登录密码') where user='root';
(3)修改远程连接密码
mysql>grant all privileges on *.* to root@"%" identified by "远程连接密码";
修改完成后记得更新权限
mysql> flush privileges;
(4)解决mysql的中文乱码问题
查询数据库编码格式,需要设置编码格式为"UTF-8"
mysql> show variables like "%char%";
退出mysql
mysql> exit;
编辑配置文件
[root@zhangqi opt]# vi /etc/my.cnf
在[mysqld]中的socket下面添加character-set-server=utf8即可完成,保存并退出(:wq)
注意:修改完成后必须重启mysql服务
service mysqld restart
重新登录mysql,并且查询数据库编码格式发现已经改变
mysql> show variables like "%char%";
五、连接测试
(1)远程连接需要关闭防火墙
[root@zhangqi opt]# systemctl stop firewalld
(2)这边用Navicat测试