返回顶部
首页 > 资讯 > 数据库 >MYSQL如何配置远程连接
  • 231
分享到

MYSQL如何配置远程连接

2024-04-02 19:04:59 231人浏览 泡泡鱼
摘要

这篇文章主要介绍Mysql如何配置远程连接,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 开启 mysql 的远程登陆帐号有两大步: 1、确定服务器上的防火墙没有阻止 3306

这篇文章主要介绍Mysql如何配置远程连接,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

开启 mysql 的远程登陆帐号有两大步:

1、确定服务器上的防火墙没有阻止 3306 端口。

Mysql 默认的端口是 3306 ,需要确定防火墙没有阻止 3306 端口,否则远程是无法通过 3306 端口连接到 MySQL 的。

如果您在安装 MySQL 时指定了其他端口,请在防火墙中开启您指定的 MySQL 使用的端口号。

如果不知道怎样设置您的服务器上的防火墙,请向您的服务器管理员咨询。

2、增加允许远程连接 MySQL 用户并授权。

1)首先以 root 帐户登陆 MySQL

windows 主机中点击开始菜单,运行,输入“cmd”,进入控制台,MySQL 的 bin 目录下,然后输入下面的命令。

linux 主机中在命令提示行下输入下面的命令。

    CODE: [COPY]

  • > MySQL -uroot -p123456

123456 为 root 用户的密码。

2)创建远程登陆用户并授权

    CODE: [COPY]

  • > grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456';

上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 123.123.123.123 这个 IP 进行远程登陆,并设置 ted 用户的密码为 123456 。

下面逐一分析所有的参数:

all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。

discuz.* 表示上面的权限是针对于哪个表的,discuz 指的是数据库,后面的 * 表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“*.*”,对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授 权为“数据库名.表名”。

ted 表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。

123.123.123.123 表示允许远程连接的 IP 地址,如果想不限制链接的 IP 则设置为“%”即可。

123456 为用户的密码。

执行了上面的语句后,再执行下面的语句,方可立即生效。

CODE: [COPY]

> flush privileges;

-----------------------------------------------------------------------------------------------------------------

解决方法:

1、改表法:

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

x:\>mysql -u root -pvmware

mysql> use mysql;
mysql> update user set host = ‘%’ where user = ‘root’;
mysql> select host, user from user;

mysql> flush privileges;

注:mysql> flush privileges; 使修改生效。

2、授权法:

例如,你想myuser使用mypassWord从任何主机连接到mysql服务器的话。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTioN;

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

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

转自:Http://hi.baidu.com/593313600/blog/item/52c13D3d4640d208baa167cf.html/cmtid/df0698f382f04d5d352acce8

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

二、问如何开启MySQL的远程连接

   Q:

    最近学习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账号进入MySQL
    mysql -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如何配置远程连接”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: MYSQL如何配置远程连接

本文链接: https://lsjlt.com/news/62533.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MYSQL如何配置远程连接
    这篇文章主要介绍MYSQL如何配置远程连接,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 开启 MySQL 的远程登陆帐号有两大步: 1、确定服务器上的防火墙没有阻止 3306 ...
    99+
    2024-04-02
  • redis如何配置远程连接
    redis如何配置远程连接?其实要解决这个问题也不难,这篇文章给出了相对应的分析和解答,下面我们一起来看看解决的方法。开启远程连接的一般步骤:1、屏蔽本地绑定信息2、添加requirepass3、重启red...
    99+
    2024-04-02
  • 如何远程连接MYSQL
    这篇文章将为大家详细讲解有关如何远程连接MYSQL,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 启动MYSQL[root@zhangrui...
    99+
    2024-04-02
  • mysql如何远程连接
    可以通过以下步骤远程连接 mysql 数据库:获取 mysql 服务监听端口;配置防火墙允许远程连接;使用 mysql 客户端工具在客户端系统上连接,输入数据库密码即可。 如何远程连接...
    99+
    2024-06-14
    mysql
  • mysql如何连接远程
    要连接远程 mysql 服务器,需要以下信息:主机名或 ip 地址、端口、用户名和密码。可以通过以下步骤进行连接:获取远程服务器连接信息。使用 mysql 客户端工具进行连接。对于不允许...
    99+
    2024-08-02
    mysql
  • phpMyAdmin如何配置连接远程数据库
    这篇文章主要介绍phpMyAdmin如何配置连接远程数据库,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!phpMyAdmin配置连接远程数据库背景wampserver 3.1.7、A...
    99+
    2024-04-02
  • Docker如何安装Redis配置远程连接
    这篇“Docker如何安装Redis配置远程连接”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Docker如何安装Redis...
    99+
    2023-07-02
  • MySQL连接参数如何配置
    MySQL连接参数可以通过以下几种方式进行配置: 在命令行中使用参数:可以在命令行中使用参数来配置MySQL连接,例如:mysql...
    99+
    2024-05-13
    mysql
  • Ubuntu 18.04配置mysql以及配置远程连接的步骤
    前言 本文主要跟大家分享了关于Ubuntu 18.04配置mysql及配置远程连接的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 配置教程如下: 首先是大家都知道的老三套,啥也不...
    99+
    2024-04-02
  • Ubuntu下MySQL的安装和远程连接配置
    本篇内容主要讲解“Ubuntu下MySQL的安装和远程连接配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Ubuntu下MySQL的安装和远程连接配置”吧!&...
    99+
    2024-04-02
  • mysql远程连接配置的方法是什么
    配置MySQL远程连接的方法如下:1. 在MySQL服务器上,打开`my.cnf`文件。在Linux上通常位于`/etc/mysql...
    99+
    2023-08-16
    mysql
  • SQLserver怎么配置远程连接
    在SQL Server配置远程连接,需要进行以下步骤: 确保SQL Server已安装并正在运行。 打开SQL Server Co...
    99+
    2024-04-09
    SQLserver
  • Mysql的远程连接设置
    设置允许远程连接 首先打开 mysqld.cnf 配置文件。 sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf 找到 bind - address 这一行 默认...
    99+
    2023-09-04
    mysql 数据库 java
  • MySql8如何设置远程连接
    这篇文章主要介绍了MySql8如何设置远程连接的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySql8如何设置远程连接文章都会有所收获,下面我们一起来看看吧。1、登录Mysql打开终端控制面板,输入mysql...
    99+
    2023-06-30
  • 配置phpmyadmin连接远程mysql数据库的方法
    这篇文章主要介绍配置phpmyadmin连接远程mysql数据库的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!引言:1、phpmyadmin程序所在服务器:192.168.1....
    99+
    2024-04-02
  • oracle client及pl/sql如何实现远程连接配置
    小编给大家分享一下oracle client及pl/sql如何实现远程连接配置,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、前言   PL/SQL 是 Oracle...
    99+
    2024-04-02
  • PyCharm如何配置SSH和SFTP连接远程服务器
    目录简介安装初试遇到的坑简介 SSH,Secure Shell,安全外壳协议,用于远程登录会话SFTP,Secret File Transfer Protocol,安全文件传送协议,...
    99+
    2024-04-02
  • 如何在CentOS服务器端配置SSH远程连接
    这篇文章主要讲解了“如何在CentOS服务器端配置SSH远程连接”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何在CentOS服务器端配置SSH远程连接”吧!安装好了CentOS 6.4,...
    99+
    2023-06-10
  • SQL Server 配置允许远程连接
    前言 需要别人远程你的数据库,首先需要的是在一个局域网内,或者连接的是同一个路由器,接下来就是具体步骤: 1、首先是要检查SQLServer数据库服务器中是否允许远程链接。其具体操作为: 1. 打开数据库,用本地帐户登录,右击第一个选项,选...
    99+
    2021-01-13
    SQL Server 配置允许远程连接 数据库入门 数据库基础教程 数据库 mysql
  • mysql数据库如何设置远程连接权限
    小编给大家分享一下mysql数据库如何设置远程连接权限,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!问题现象mysql 安装完毕,本机登录正常,在远程输入正确账号密码登录连接时报错如下问题原因...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作