1.dos窗口命令登陆。
管理员/普通用户登陆(账号/密码:root/rootpwd)
mysql -hlocalhost -uroot -prootpwd
普通用户登陆(root管理员的不可以使用这种方式):
mysql -hlocalhost -ushend -p123456
mysql -u 用户名 -p
2.查询数据库编码
use mysql;//这句一定要记得打
show variables like '%skip_networking%';
3.在mysql数据库的user表种查看当前root用户的相关信息
selecthost,user from user where user='root';
查询所有用户的相关信息
select host,user rom user;
4.修改是否可以远程的权限,localhost表示只可以本地访问,%表明可以远程访问。
update user set user.host='%' where user.user='root';
5.新建用户远程连接mysql数据库
grant all on *.* to admin@'%' identified by '123456' with grant option;
新建的用户使用彩虹猫(navicat)连接说没有权限,报下面的错:Authentication plugin 'caching_sha2_password' cannot be loaded
远程访问数据库的可视化工具比较多如:Navicat、SQLyog、MySQL workbench 等,我这里使用 Navicat
输入访问的 host 和密码,报 2059 错误,这是因为 MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。
此问题有两种方法,一种是更新 Navicat 驱动来解决此问题,另一种是将 MySQL 用户登录的加密规则修改为 mysql_native_password,第一种方法我试过了没有起作用,我这里采用第二种方法。
修改加密规则:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
更新root密码:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
use database_name;告诉mysql你要使用那个数据库;
service mysqld start/restart/stop 启动服务/重启服务/停止服务
6.刷新配置的权限:
flush privileges;