总结一下,Centos7 系统下使用 yum 命令安装 MySQL5.7的具体步骤:
rpm -qa | grep mysql
如果你系统有安装,那可以选择进行卸载
rpm -e mysql // 普通删除模式
rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
在这里我用的是5.7版本的链接,输入: wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
注意,这里如果报错: -bash: wget: 未找到命令
我们先安装下wget命令 :yum -y install wget
安装mysql源: yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
3. 在线安装Mysql
yum -y install mysql-community-server
下载的东西比较多 要稍微等会;
4. 启动Mysql服务
systemctl start mysqld
启动的时候有可能会启动不成功,这个时候可以去看下在/var/log/mysqld.log文件,里面有详细的log。
我安装的时候遇到过mysql目录下的文件都是只读模式,需要找到mysql的目录修改下权限就可以了
Centos 通过yum安装(RPM分发进行安装)MySQL的几个人默认目录如下:
| 目录 | 目录内容 |
| :-------------: |:-------------
| /usr/bin | 客户端程序和脚本 |
| /usr/sbin | mysqld服务器 |
| /var/lib/mysql | 日志文件,数据库文件 |
| /usr/share/mysql | 错误消息和字符集文件 |
| /etc/my.cnf | 配置文件 |
[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# systemctl daemon-reload
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。
[root@localhost ~]# vi /var/log/mysqld.log
这里的临时密码 eMV.R#mWe3ha
[root@localhost ~]# mysql -u root -p
Enter password:
输入临时密码 进入mysql命令行;
mysql> alter user 'root'@'localhost' identified by 'root'
Query OK, 0 rows affected (0.00 sec)
修改密码为 ZhipengWang2012@ (备注 mysql5.7默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位)
注意:如果大家设置的密码太过简单,例如123456,则会出现以下的提示

这里报的是ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,大概意思就是你设置的密码太过简单,然后我们可以修改两个参数来改变密码判断规则。
首先,修改validate_password_policy参数的值
mysql> set global validate_password_policy=0;
再修改密码的长度
set global validate_password_length=1;
再次执行修改密码就可以了
设置允许远程登录
Mysql默认不允许远程登录,我们需要设置下,并且防火墙开放3306端口;
mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘你的密码’ WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> exit;
Bye
退出下;
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]#
开放3306端口
配置默认编码为utf8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_connect=‘SET NAMES utf8’
[root@localhost ~]# vi /etc/my.cnf
[root@localhost ~]# systemctl restart mysqld
[root@localhost ~]#
查看下编码:
mysql> show variables like '%character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
我们用本机的sqlyog远程连接下虚拟机里的mysql
OK 至此 Mysql安装配置完毕;
开机自动启动:systemctl enable mysqld
开机不自动启动:systemctl disable mysqld
停止服务:service mysqld stop
查询状态:service mysqld status
启动服务:service mysqld start
重启服务:service mysqld restart