CentOS7现在默认不支持MySQL了,默认的是MariaDB,这是MySQL的分支,但是对于我们来说是需要MySQL,下面进行安装。
第一步、先下载 mysql源安装包(Yum Repository)
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
如果出现 -bash: wget: 未找到命令
我们先安装下wget 如果安装过了。 就不用安装了
yum -y install wget
下载完wget后再执行 wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm,这里下载很快。
第二步、然后就是安装mysql源:
yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
第三步、之后在线安装MySQL服务器:这里下载东西有点多,会下载很久(我自己大概下了半小时),耐心等待,安装完成后就会覆盖掉之前的mariadb。
yum -y install mysql-community-server
终于下载好了:
第四步、启动Mysql服务
systemctl start mysqld
查看MySQL运行状态,运行状态如图:
systemctl status mysqld.service
此时MySQL已经开始正常运行。
第五步:设置开机启动
systemctl enable mysqld
systemctl daemon-reload
第六步:修改root本地登录密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。
vi /var/log/mysqld.log
这里的临时密码 H9i?Qeuyysiq 你的可能不同,然后按 esc 再按 :q 退出。
然后进入MySQL:
[root@localhost ~]# mysql -u root -p
Enter password:
输入临时密码 进入mysql命令行;(输入密码时时看不见的!)
此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:
(备注 mysql5.7默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'XiaoMing20181206.';
XiaoMing20181206.是你自己设置的密码
成功配置。
第七步:设置允许远程登录
Mysql默认不允许远程登录,我们需要设置下,并且防火墙开放3306端口;
如果没有开启3306端口,开启一下:
为firewalld添加开放端口
添加mysql端口3306和Tomcat端口8080
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
然后再重新载入
firewall-cmd --reload
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'XiaoMing20181206.' WITH GRANT OPTION;
XiaoMing20181206.是远程登录的密码;
退出下;mysql> exit;
第八步:配置默认编码为utf8
修改/etc/my.cnf配置文件,在[mysqld]的最下面添加编码配置,如下所示:
character_set_server=utf8
init_connect='SET NAMES utf8'
[root@localhost ~]# vi /etc/my.cnf
按 i 进入编辑模式,加入后按 esc 和 :wq 保存退出。
然后重启mysql服务;
[root@localhost ~]# systemctl restart mysqld
查看下编码:
mysql> show variables like '%character%';
至此MySQL的所有配置全部完成 !!!
测试:
如果出现2003-Cant connect to mysql server on 192.168.137.192 问题,可能是没有3306端口:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
然后连接成功: