一般来说远程连接MYSQL数据库,除非两台服务器在同个机房的局域网内,不然访问速度肯定很慢,性价比不高,除非为了远程维护方便,不然一般不会有人这么设置,这里简单谈谈如何在WIN系统下设置MYSQL的远程链接,至于UNIX类系统的MYSQL远程链接,可以参考http://www.bnxb.com/design/mysql/2010/01212310.html

另外说明一下,很多人按下面的方法配置后仍然不能远程链接到MYSQL,其实是因为从MYSQL5以后,MYSQL为了安全,又多加了一重防护,只要修改MYSQL文件夹下的MYSQL配置文件MY.INI,直接把bind-address = 127.0.0.1 这行注释掉或者删除掉就绝对可以远程链接了。

从“命令提示符”进入mysql

如果MYSQL安装在E盘

那就输入

e:

cd mysql(mysql的安装目录)

cd bin

mysql -uroot -p88888

root是用户名 88888是你自己的密码

要先一步一步到 bin目录下再执行登录。

你的如果安装在C盘,那第一步可以输入 cd\ 就直接回到c:盘了

bnxb.com

解决方法(转):经起源网测试,执行第一种办法时出现错误,第二种办法成功,具体原因未知 起源网bnxb.com

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

mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user; 内容来自bnxb.com

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTIONwww.bnxb.com

如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION

详细实例:在安装mysql的机器上运行:

1、d:\mysql\bin\>mysql -h localhost -u root

//这样应该可以进入MySQL服务器

2、mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION

//赋予任何主机访问数据的权限

3、mysql>FLUSH PRIVILEGES

//修改生效

4、mysql>EXIT

3.使用PHPMYADMIN修改

在phpmyadmin中使用ROOT权限用户登录(也就是MYSQL的管理员账号,一般默认是root)点击权限以后,进 入如下界面

点击任意root用户后面的编辑按钮,在接下来的页面中更改下图区域中的各文本框的值

在用户名中输入你要在远程计算机中使用的数据库用户名,主机后面选择使用文本域,后面的文本框中输入要连接数据库的远程计算机的ip地址,密码中输 入访问数据库的密码,在下面表格的单选框中选择保留旧用户,然后执行即可

这样在上面指定ip的远程计算机就可以通过上面设置的用户名及密码访问数据库了

MySQL数据库服务器支持远程连接的设置方法

机连接上数据库服务器,如果想让用户通过另外一台机器连接上数据库服务器必须手动进行修改:

1、在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。

2、在mysql控制台执行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;

3、在mysql控制台执行命令中的 'root'@'%' 可以这样理解: root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的IP地址;'MyPassword'是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限,GRANT具体操作详情见:http://dev.mysql.com/doc/refman/5.1/en/grant.html

4、不放心的话可以在mysql控制台执行 select host, user from user; 检查一下用户表里的内容,我的检查如下图所示:

请问如何开启MySQL的远程连接

Q & A:

最近学习PHP,装了个phpwind论坛和FTP流量插件,需要远程连接MySQL数据库.不知道如何打开本地服务器的远程连接.现在本地服务器上的论坛和FTP流量插件都运行正常,在另一台服务器上安装插件,连不上数据库.到PW官方求助没人回贴.因此来这寻求帮助.

服务器信息

PHP程式版本: 4.3.11

MySQL 版本: 4.1.10-nt

服务器端信息:Microsoft-IIS/5.0

装有phpMyAdmin

A1:

远程连接到MySQL需要做的

1. 进入MySQL,创建一个新用户xuys:

格式: grant 权限 on 数据库名.表名 用户@登录主机 identified by "用户密码";

grant select,update,insert,delete on *.* to xuys@192.168.88.234 identified by "xuys1234";

查看结果,执行:use mysql;

select host,user,password from user;

可以看到在user表中已有刚才创建的xuys用户,host字段表示登录的主机,其值可以用IP,也可用主机名,将host字段的值改为%就表示在任何客户端机器上能以xuys用户登录到MySQL服务器,建议在开发时设为%.

update user set host = '%' where user = 'xuys';

2.

./mysqladmin -u root -p pwd reload

./mysqladmin -u root -p pwd shutdown

3.

./mysqld_safe --user=root &

记住: 对授权表的任何修改都需要重新reload,即执行第3步.

如果经过以上3个步骤还是无法从客户端连接,请执行以下操作,在MySQL数据库的db表中插入一条记录:

use mysql;

insert into db values('192.168.88.234','%','xuys','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');

update db set host = '%' where user = 'xuys';

重复执行上面的第2,3步.

A2:

Web与MySQL数据库分离开来是一个不错的选择,避免因为大量的数据库查询占用CPU而使Web资源不足,同时可以使Web服务器的资源尽最大的提供浏览服务,而数据库服务器单独的只处理数据库事务.

我对这方面的原理不甚太十分了解,我的做法其实就是下面要说的,很简单.大家有更好的经验和技巧不妨提出来分享一下.

适用范围: 拥有独立主机权限

硬件配置: 两台服务器,至于具体服务器硬件配置就不在本文范围内了

其中: A为Web服务器(假设IP为: 192.192.192.192),B为MySQL数据服务器(假设IP为: 168.168.168.168)

着手动作:

1. 在Web服务器A配置好Web服务.关于这方面文章很多了.假设Web服务器的IP为: 192.192.192.192

2. 在数据库服务器B安装好MySQL服务

3. 现在新版的MySQL一般默认都不允许远程连接的,需要建立远程连接账号才可以

以命令行方式使用root账号进入MySQLmysql -u root -p pass

选择进入MySQL数据库

use mysql;

查看所有存在的账号和地址

SELECT `Host`,`User` FROM `user`;

比如我的就是:+------------+-------+

| Host | User |

+------------+-------+

| localhost | |

| localhost | pma |

| localhost | root |

+------------+-------+

3 rows in set (0.00 sec)

也就是说,存在三个只允许本地连接的(localhost)账号,分别为root,pma,空用户.

现在决定让root具有上面那个Web服务器A的远程链接的权限,那么就这样:

UPDATE `user` SET `Host` = '192.192.192.192' WHERE `User` = 'root' LIMIT 1;

这样192.192.192.192这台Web服务器就可以远程连接到这个数据库服务器了,假如你想让任何远程机器都可以连接这个数据库,就将192.192.192.192换为%,不过不建议这样做,原因你知道啦!

假如你想新建一个用户new_user具备远程链接的权限的话,就这样:

INSERT INTO `user` ( `Host` , `User` , `Password` , `Select_priv` , `Insert_priv` , `Update_priv` , `Delete_priv` , `Create_priv` , `Drop_priv` , `Reload_priv` , `Shutdown_priv` , `Process_priv` , `File_priv` , `Grant_priv` , `References_priv` , `Index_priv` , `Alter_priv` , `Show_db_priv` , `Super_priv` , `Create_tmp_table_priv` , `Lock_tables_priv` , `Execute_priv` , `Repl_slave_priv` , `Repl_client_priv` , `ssl_type` , `ssl_cipher` , `x509_issuer` , `x509_subject` , `max_questions` , `max_updates` , `max_connections` ) VALUES ('192.192.192.192', 'new_user', PASSWORD( 'new_user_password' ) , 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', '0', '0', '0');

将new_user改为你想要的名字就可以了,密码是: new_user_password,当然你可以随意设置.

当你的数据库可以远程连接后,你就可以在你的Web服务器的论坛config.inc.php中设置$dbhost变量为你的MySQL数据库服务器B的IP了:

$dbhost = '168.168.168.168';

实际操作中,最好两台机器在同一个机房的同一网段/防火墙内.当然如果有可能的话,将数据库服务器放置于Web服务器网络内的局域网中就更好了.

Q3:

还是这样简洁些:

grant all on yourdb.* to yourUsername@yourHost identified by "yourPassword";

flush privileges; //使权限立刻生效

测试远程连接mysql_让MYSQL服务支持远程连接(允许mysql远程登录)测试可行相关推荐

  1. mysql启动服务但无法连接不上_mysql服务启动却连接不上两种解决办法

    这篇文章主要为大家详细介绍了mysql服务启动却连接不上的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 mysql服务启动,但是连接不上,如何解决? 登陆报错: root@localho ...

  2. linux服务器查看mysql服务名称_Linux服务器查看MySQL信息

    查看mysql路径 whereis mysql  查看安装路径 which mysql   查看运行路径 输入指令 chkconfig --list mysqld 查看mysql服务是否已经添加到li ...

  3. wamp mysql服务无法启动_wamp中mysql无法启动怎么办

    wamp中mysql无法启动的解决办法:1.通过设置环境变量,开启MySQL服务:2.在启动wampserver之前把MySQL服务停掉:3.在my.ini中添加或修改"innodb_for ...

  4. Win10 Wsl可以装mysql_WSL win10子系统linux-ubuntu 安装mysql root用户远程连接 开机启动mysql服务 用navicat连接登录...

    0.若之前有装过mysql,需要先清除mysql相关的安装信息 apt-get remove mysql-server apt-get autoremove mysql-server apt-get ...

  5. js 连接mysql_搭建node服务(二):操作MySQL

    为了进行复杂信息的存储和查询,服务端系统往往需要数据库操作.数据库分为关系型数据库和非关系型数据库,关系型数据库有MySQL.Oracle.SQL Server等,非关系型数据库有Redis(常用来做 ...

  6. 使用sqlserver连接mysql服务_Sqlserver创建连接MySql的链接服务器

    第一步:在MySql服务器上安装与系统对应的 MySql-Connector-ODBC 安装过程中可能会报 缺失 msvcr100.dll的错误,这需要你根据系统到网上下载对应的这个dll文件.(当初 ...

  7. ecmall mysql.php_ECMall支持SSL连接邮件服务器的配置方法详解

    首先,主要是ecmall使用的phpmailer版本太低,不支持加密连接. 然后,得对相应代码做一定调整. 1. 覆盖phpmailer 请从附件进行下载: 2. 改造lib 涉及到两个lib:mai ...

  8. navicat for mysql服务_使用Navicat for MySQL数据库连接服务器中的MySQL服务

    本文主要向大家介绍了使用Navicat for MySQL数据库连接服务器中的MySQL服务,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 第一步:登录mysql服务器,新建一个 ...

  9. 查看mysql服务的可视化_Prometheus 监控Mysql服务器及Grafana可视化

    Prometheus 监控Mysql服务器及Grafana可视化. mysql_exporter:用于收集MySQL性能信息. 使用版本 mysqld_exporter 0.11.0 官方地址 使用文 ...

最新文章

  1. faster rcnn第二阶段loss出现nan_利用Faster_Rcnn训练模型时出现的问题
  2. .NET CF WM上创建快捷方式
  3. RF内置库函数学习(一)
  4. linux 下的gettimeofday 函数在windows上的替换方案
  5. 论文浅尝 - ACL2020 | Segmented Embedding of Knowledge Graphs
  6. 基于java springboot+mybatis学生学科竞赛管理管理系统设计和实现
  7. linux防火墙知识,Iptables防火墙 基础知识
  8. 硬盘整数分区计算方法(精确硬盘分区算法)
  9. 关于目标文件系统,文件过大的解决方法
  10. angular7.0+ngx-weui公众号开发,开发及框架搭建(一)
  11. QT 科学计算器与谷歌拼音输入法实现
  12. 阿里云服务器购买流程
  13. 运用python编写凯撒密码并实现_凯撒密码实现英文短句的加解密
  14. 脑壳疼的Webpack-tapable
  15. C# WPF 3D正方体旋转
  16. 3月16日-17日学习总结
  17. LINUX学习基础篇(三十三)系统资源
  18. 【Axure RP9基础】 Axure标签页切换详解
  19. cesium态势标绘 ( 绘制矩形)
  20. 服务器修复bootmgr,win7开机出现bootmgr is missing怎么解决_网站服务器运行维护,win7,bootmgr is missing...

热门文章

  1. 教你炒股票1:不会赢钱的经济人,只是废人!
  2. git 提交过的追加提交
  3. 线性筛(欧拉筛)——算法解析
  4. python删除列索引_从datafram中删除列索引
  5. Oracle 添加列、删除列
  6. 市场经济还是市场政府?
  7. 3、《每天5分钟玩转Docker容器技术》学习-Docker架构
  8. 《Samsung》三星四核高端平板电脑开发板UT-Exynos4412开发板
  9. ubuntu 使用sftp 上传文件
  10. 如何才能做好企业内部客服知识管理?