码迷,mamicode.com
首页 > 数据库 > 详细

20190526 - CentOS 7 中 安装 MySQL 8 并授权 root 远程访问

时间:2019-05-26 09:44:31      阅读:431      评论:0      收藏:0      [点我收藏+]

标签:tables   密码   table   去掉   tab   开发环境   快捷键   centos 7   safe   

1. CentOS 7 中 安装 MySQL 8

CentOS 7 中内置 MariaDB 建议升级一下用,性能好很多。但如果一定要用 MySQL 8,就得自己装。

坦白的说,Oracle 升级 MySQL 8,一方面是 5.7 性能不如 MariaDB,二个就是为了造坑(以安全的名义)。

2. MySQL 8 授权 root 远程访问

MySQL 8 授权 root 远程访问绝对是坑,以往的旧命令都会提示失败,因为安全原因,尤其是在 CentOS 7 这种安全的系统上。

% 是什么?

是 MySQL 对地址的通配符,默认 root 用户的 host 是 localhost,不要去修改,要加一行 ‘root‘@‘%‘,当然这是开发环境,生产环境建议用其他用户。

skip-grant-tables 是什么?

是 MySQL 的选项,即具备本地权限时,直接跳过授权表直接修改 mysql 数据库。

如果不注意,可能会陷入授权死锁(加了不能授权,去掉不能登录),此时加上,并 update 清空 root@localhost 密码可以解决。

可以 修改 /etc/my.cnf 加入 skip-grant-tables 一行,搞完事再改回去,也可以

service mysqld stop; mysqld_safe --skip-grant-tables &

这样运行的 mysql 就是没有铠甲的,你可以聪明的用各种 select insert delete update 搞事情,当然,搞砸了别跑路。

MySQL 8  中授权关键在此,这两句需要连续运行

mysql> CREATE USER root@% IDENTIFIED BY Password!@123;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@% WITH GRANT OPTION;

3. 吐槽 SQLyog

Webyog 的 SQLyog 本来属于那种原生的很 man 的,不像 MySQL WorkBench 那样软绵绵的,天知道他们用了什么开发。

曾今为 SQLyog 提交过自动写 SQL 的代码,生成原生 insert update delete select 语句及快捷键的设置,都是本人贡献的 C/C++ 代码,当然,那是在 google code 时代。

但如今 SQLyog 居然连 MySQL 8 的 plugin:caching_sha2_password 都不支持,依然只支持旧模式 mysql_native_password

可 Navicat 支持啊,SQLyog 真是一手好牌打烂了。

 

真心写了一篇奇怪的笔记。

 

20190526 - CentOS 7 中 安装 MySQL 8 并授权 root 远程访问

标签:tables   密码   table   去掉   tab   开发环境   快捷键   centos 7   safe   

原文地址:https://www.cnblogs.com/likun/p/mysql-8-remote-access.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!