windows远程连接MySQL失败

windows远程连接MySQL失败,第1张

MySQL我用的是apt安装的,有很多问题,建议大家用二进制程序安装。

问题描述

在服务器上登录MySQL只能用本地的127.0.0.1地址,用服务器本身地址会提示拒绝访问

尝试修改MySQL远程访问权限

修改后发现没有用,MySQL依然拒绝远程访问

查看3306端口

root@sfpql:~# netstat -an|grep 3306

修改MySQL服务地址:

尝试远程连接

telnet sfpql 3306

结语

MySQL远程连接不上是常见问题,一般设置好MySQL的远程访问权限就可以了。

apt安装的MySQL会自己将启动地址设置在本地,同时apt安装的MySQL的服务查看命令是 systemctl status mysql 其他安装方式的常看命令是 systemctl status mysqld

一、改表法。

可能是你的帐号不允许从远程登陆,只能在localhost登录。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改把host更改为"%"

a. bin/mysql -uroot -p密码

b. use mysql----->show tables------>select host, user from user

c. update user set host = '%' where user = 'root'

d. flush privileges

1、登陆服务器端,进入命令行,windows cmd

2、设置用户、密码让指定的IP访问:mysql -u root -p 或安装的快捷方式进入:MySQL Command Line Client,使用grant命令:

grant 权限1,权限2,权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令'例子:mysqlgrant select,insert,update,delete,create,drop on mydb.mytable to lzpddd@192.168.1.88 identified by 'mypassword'给来自192.168.1.88

的用户lzpddd分配可对数据库 mydb的mytable表进行select,insert,update,delete,create,drop等 *** 作的权限,并设定口令为'mypassword'

mysqlgrant all privileges on *.* to lzpddd@192.168.1.88 identified by 'mypassword'给来自192.168.1.88

的用户lzpddd分配可对所有数据库的所有表进行所有 *** 作的权限限,并设定口令为'mypassword'

mysqlgrant all privileges on *.* tolzpddd@'%'identified by 'mypassword'给来自任何IP地址的用户lzpddd分配可对所有数据库的所有表进行所有 *** 作的权限限,并设定口令为'mypassword'

3、关闭服务器端防火墙或者开放3306端口(很重要);

4、客户端连接:

进入命令行,windows cmd,连接:

mysql -u 用户名 -p密码 -h服务器IP地址 -P服务器端MySQL端口号 -D 数据库名注意:(1)服务器端口标志-P一定要大些以区别于用户-p,如果直接连接数据库标志-D也要大写;

(2)如果要直接输入密码-p后面不能留有空格如-pmypassword

(3)命令结束段没有''分号。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8645894.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存