本地sqlyog连接虚拟机MySQL

其中 我的SQL 主机地址代表的是 MySQL 所在的主机ip地址

        端口的话  如果是虚拟机部署MySQL需要与本机进行端口映射,在user-》34905-》中的Vagrantfile进行配置

并且需要关闭防火墙。

1. 首先使用命令连接数据库

  docker exec -it mysql bash(因为我是用docker部署的mysqk)

然后使用命令连接mysql

mysql -uroot -p

输入密码(一般默认)

此时可以查看本地的mysql

use mysql;

使用命令来查看root用户是否开放远程连接

select user,host from user;

如果root对应的是%,则开启远程连接。

如果root对应的是localhost,则是只能本地连接。

当我们想要远程连接时,我们可以使用命令更改root权限,其中%代表开启远程连接,非本地端口也可以连接。

1. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 

     (比较适用于新创建root)

2. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Admin123@qwe'    WITH   GRANT OPTION

    (适用于已创建root)

修改密码

alter user root@'%' identified with mysql_native_password by '123456';

——————————————————————————————————————————

如果我们忘了密码,可以在my.cnf 中进行配置,跳过密码验证,在[mysqld]选项下面

skip-grant-tables    #登陆时跳过权限检查

然后重启mysql服务

sudo systemctl restart mysqld

登录mysql,输入  mysql -uroot -p;  直接Enter 进入mysql

并使用数据库mysql

use mysql;

使用命令进行重置密码

update user set password=password(‘新密码’) where user=’root’; (暂时无效)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'newPassword';  (有效)
其中,localhost是root的权限,如果是开启远程连接,则使用 % 来替代localhost

然后可以按照上面步骤来进行修改root权限。

如何有报错,我们可以使用命令来更新操作

flush privileges;

——————————————————————————————————————————

防火墙权限

查看防火墙状态

systemctl status firewalld

关闭防火墙

systemctl stop firewalld

猜你喜欢

转载自blog.csdn.net/weixin_55347789/article/details/132061427
今日推荐