1
在未配置MySQL之前,根据MySQL服务端的信息,用navicate客户端进行连接测试,如图一、图二所示
2
在MySQL所在机器上登录root用户,如图三所示
3
切换到mysql库,并查看user表,如图四所示
use mysql
select host,user,password from user
4
修改host列的用户,建议修改localhost用户,如图五所示
执行命令如下:
update user set host = '%' where host = 'localhost'
select host,user,password from user
flush privileges
5
再次用navicate客户端进行连接测试,如图六所示
END
FAQ
1
为什么只改一条呢?
因为%代表了任何ip地址均可以访问此mysql库,所以只有一条%记录即可,多条无意义,如需根据不同的ip、不同用户有不同的权限访问,可设置为多条。
2
为什么只是修改某条user记录,而不是insert一个用户呢?
因为新增的用户,相关权限是没有的,如果新纪录的各项都设置为Y,则权限过大,如果新纪录的各项都设置为N,则权限过小,远程登录之后,无法进行其他 *** 作。
前置条件:
1、在阿里云服务器de系统是win service 2012。
2、服务器里自己安装了my sql 5.7
3、本地也安装了my sql 5.7
需求:想通过本地的mysql连接上远程的服务器的mysql,这样自己在本地 *** 作数据库比在服务器里数据库要好。
步骤:
一、增加允许远程连接 MySQL 用户 并授权。
在你安装路径下的bin文件夹里进行命令行的设置。
1、首先以 root 帐户登陆 MySQL
在服务器中打开命令行(shift+右键)
打开数据库管理员权限
mysql -uroot -p 123
我去,对应的是123是对应到数据库名。
果断改为
mysql -uroot -p
输入mysql的密码。
2、查看用户的权限
mysql>select host,user from user(查看用户的权限情况)
3、创建远程登录用户并授权
进入到服务器的命令行里
输入
use mysql
在输入
grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456'
上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 123.123.123.123 这个 IP 进行远程登陆,并设置 ted 用户的密码为 123456 。
注意:
(1)all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。
(2)discuz.* 表示上面的权限是针对于哪个表的,discuz 指的是数据库,后面的 * 表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“*.*”,对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授 权为“数据库名.表名”。
(3)ted 表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
(4)123.123.123.123 表示允许远程连接的 IP 地址,如果想不限制链接的 IP 则设置为“%”即可。
(5)123456 为用户的密码。
我最终使用的是把整个数据库的权限都ok,全部数据库的全部表,给root用户授权。没有设定远程连接IP地址。
4、执行更新权限(刷新权限)
flush privileges
5、再一次查看数据库用户权限
mysql>select host,user from user(再次查看用户的权限情况)
二、打开服务器上的防火墙阻止 3306 端口,可以公网访问。
MySQL 默认的端口是 3306 ,需要确定防火墙没有阻止 3306 端口,否则远程是无法通过 3306 端口连接到 MySQL 的。
如果您在安装 MySQL 时指定了其他端口,请在防火墙中开启您指定的 MySQL 使用的端口号。
找到防火墙的允许的应用,打开数据库的公用和专用。
三、在本地建立服务器数据库连接
1、点击这个
2、数据里填上连接的名字,服务器IP,以及连接数据库的名字和密码
3、点击configure server mangement
如果报这个错误,说明是服务器的3306端口与没有打开。
下面图连接成功
选择SSH login。。。。
输入服务器的公网IP和端口(我也不知道是啥端口我写的是本地跑的项目的本地接口)
一路next就ok。
安装好mysql之后,利用CMD连接本机mysql数据库步骤如下:
1、首先第一步是需要我们安装好Mysql,安装好之后,我们就可以去我们的程序里面找到这个软件。笔者安装的是Mysql5.7的版本。
2、接下来我们就来打开CMD.按下图所示搜索CMD,然后点击运行。
3、打开CMD之后,我们需要使用这个命令“netstartmysql57”来开启mysql服务。需要找的就是mysql的安装目录。笔者的安装目录是:“C:mysql57soft_x0008_in\"。然后我们就要用到这个命令:\"cdC:mysql57soft_x0008_in”去找到这个目录。
4、找到这个目录之后,我们就可以开始连接我们的数据库了。连接本机数据库,我们要用到的命令是:“mysql-uroot-p”,这里回车之后,就会要求我们输入密码。
5、最后我们把事先设置好的密码输入进去,注意这里密码是不会显示的。输入正确之后,就会连接成功了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)