CentOS 7下yum重装 MySQL 5.7 (远程连接成功)

第一次安装遇到ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2)这个问题,修改了权限更改了用户修改了版本都不行,最后决定卸载重装以下,个人contOS 7 安装MySql 5.7总结出来的坑与教程:

第一部分:完全卸载mysql

1、查找yum已安装mysql

yum list installed|grep mysql


2、把找到的所有已安装软件全部卸载( 可以使用 # yum remove name 或者 # yum erase name 都会消解对应的 dependencies)
yum erase mysql-community-libs.x86_64
yum erase mysql-community-common.x86_64
yum erase mysql-community-client.x86_64
yum erase mysql-community-server.x86_64
yum erase mysql57-community-release.noarch

全部用erase删除

3、查找根目录下所有mysql相关文件并删除

find / -name mysql

rm -rf /var/lib/mysql
用rm命令删除所有文件夹与子文件

此时,mysql完全卸载,准备重装!


第二部分:CentOS 7安装MySQL 5.7

1.下载YUM库

shell > wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

2.安装YUM库

shell > yum localinstall -y mysql57-community-release-el7-7.noarch.rpm

3.安装数据库

shell > yum install -y mysql-community-server

4.启动MySQL服务

shell > systemctl start mysqld.service

5.默认空密码

shell > mysql -uroot -p

6. 登陆并修改密码

用该密码登录到服务端后,必须马上修改密码,不然会报如下错误:

mysql> select @@log_error;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

修改密码:


ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';


如果手贱或者不知道啥原因出现如下问题:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

请修改my.cnf,添加skip-grant-tables和skip-networking:

shell > vi /etc/my.cnf
[mysqld]
skip-grant-tables
skip-networking

重启mysql,然后重复以上修改密码步骤即可,记得修改完后,去掉my.cnf添加的两行。

7、密码策略

如果密码设置太简单出现以下的提示:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

如何解决 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 呢? 这里直接提供解决方案文末有详细的说明

必须修改两个全局参数:
首先,修改validate_password_policy参数的值

set global validate_password_policy=0;

再修改密码的长度

set global validate_password_length=1;

再次执行修改密码就可以了

ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';


再不行的话执行

flush privileges;

刷新用户权限即可!


第三部分:配置

1、设置防火墙(CentOS7 不推荐)

vi /etc/sysconfig/iptables

在-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited之前,添加

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

重启防火墙

service iptables restart

注:centos7使用的是firewall防火墙

  systemctl stop firewalld.service #停止

  systemctl disable firewalld.service #禁用

2、设置字符编码集和区分大小写

2.1修改mysql配置文件(设置字符编码集)

默认位置:/etc/my.cnf

进入etc文件夹>>vim my.cnf

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

* systemctl restart mysql.service #重启MySQL

* 查看当前mysql运行状态

mysql>status

参数说明:

haracter_set_client:客户端请求数据的字符集。

character_set_connection:从客户端接收到数据,然后传输的字符集。

character_set_database:默认数据库的字符集,无论默认数据库如何改变,都是这个字符集;如果没有默认数据库,使character_set_server指定的字符集,此参数无需设置。

character_set_filesystem:把操作系统上文件名转化成此字符集,即把character_set_client转换character_set_filesystem,默认binary即可。

character_set_results:结果集的字符集。

character_set_server:数据库服务器的默认字符集。

character_set_system:这个值总是utf8,不需要设置,存储系统元数据的字符集。

2.2修改mysql配置文件(设置区分大小写)

lower_case_table_names 参数详解:

0:区分大小写

1:不区分大小写


最后分享一下远程连接成功的截图:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谢泽的网络日志

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值