当前位置: 首页 > 知识库问答 >
问题:

MySQL与一个数据库的连接失败,而与其他数据库的连接失败

帅德惠
2023-03-14

我在MySQL上有2个数据库。ge和GE_SC001。

我可以通过我的ASP.NET mvc应用程序在本地访问这两个。

Web.config

 <connectionStrings>
<add name="GEContext_sc001" connectionString="server=localhost;port=3306;uid=root;pwd=***;database=ge_sc001" providerName="MySql.Data.MySqlClient" />
<add name="GEContext_sc002" connectionString="server=localhost;port=3306;uid=root;pwd=***;database=ge" providerName="MySql.Data.MySqlClient" />
<add name="GEContext" connectionString="server=localhost;port=3306;uid=root;pwd=***;database=ge" providerName="MySql.Data.MySqlClient" />

null

稍后,当我在web服务器上部署应用程序,并尝试从本地机器访问它们时。我将server=localhost更改为机器的面向外部的IP地址。现在我只能访问一个GE。当我尝试访问第二个时,它会给我错误。

拒绝用户“root”@“对数据库”GE_SC001“的访问

注意上面没有localhost,即'root'@'localhost'

显示授予

“授予...的所有特权。到\'root\'@\'localhost\'(由密码'*xxx\'标识),带有GRANT选项''GRANT proxyon\'\'@\'\'到\'root\'@\'localhost\',带有GRANT选项''

由于ASP.NET mvc在启动应用程序之前会检查数据库连接,所以我在服务器上有一个默认数据库,它被定义为gecontext。如您所见,数据库名称也是GE。我根本没有更改这个连接字符串,所以它仍然指向localhost。

共有1个答案

奚飞星
2023-03-14

您的外部IP中缺少GE_SC001Grant

从外部IP连接

(要在远程服务器上运行的)特定语法应为

GRANT ALL ON ge_sc001.* TO 'root'@'<external_ip>';

其中 是远程客户端的外部IP

一个更笼统的(我不喜欢,太宽泛了)应该是:

GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '<password>' WITH GRANT OPTION;

---旁注---

mysql.user表中有一个干扰项。手动删除该功能,并使用刷新特权清除了问题

 类似资料:
  • 我在连接到公共托管的静态IP mysql服务器时遇到了一个奇怪的问题。 我能够使用MySQL Workbench成功连接到服务器,也可以通过SSH连接到本地远程服务器。但是从jdbc连接器连接到mysql服务器的尝试(通过NetBeans和本地部署的代码都失败)。在查看日志时,代码正在尝试与远程服务器连接,考虑到用户凭据是本地用户而不是远程用户的。因此用户存在于远程,但java在尝试连接时会考虑u

  • 当我使用此配置(连接到本地DB)时-一切正常: 我唯一更改的是另一台机器的IP,而我总是得到相同的错误: 这是我得到的错误: 最后一个成功发送到服务器的数据包是在0毫秒前。驱动程序没有从服务器接收到任何数据包。在Sun.Reflect.NativeConstructorAccessorImpl.NewInstance0(原生方法)在Sun.Reflect.NativeConstructorAcce

  • 我是拉威尔的新手,目前正在拉威尔的一个项目中工作。 当我在我的文件中使用'php工匠服务'来检查它是否工作/localhost,我得到了这个错误: (1/1)HttpException数据库连接失败! 在应用中。php第1014行 应用时- 在ScriptMint中中止时('399','数据库连接失败!')。php第31行 在ScriptMint- 在管道上- at XSP保护- 在管道上- 在T

  • 我试图连接到我的mongo数据库在我的远程服务器: 但我有一个错误: MongoDB外壳版本:2.6.10连接到:xxx。xxx。xxx。xx:27017/测试2016-11-07T05:18:39.140 0000警告:无法连接到xxx。xxx。xxx。xx:27017,原因:错误号:111连接被拒绝2016-11-07T05:18:39.142 0000错误:无法连接到服务器xxx。xxx。x

  • 我使用的是ubuntu系统和Mysql 8.0。我试图用jdbc类连接数据库,但出现了一个错误,尽管我添加了mysql连接器。jar文件, 我在下面提到的错误-- JAVAlang.module。FindException:读取模块:/home/surya/eclipse workspace/Advancedjava/bin时出错,原因是:java。lang.module。InvalidModul

  • 我刚刚从Ubuntu 10.04到12.04重新安装了我的操作系统,我在Ubuntu 10.04上使用了play 2.0.1,10.04上一切正常,但是现在同样的play 2.0.1把事情搞砸了,现在每次我运行命令服务器启动,但当我击中我的应用程序的索引页,它给我以下异常: 在参加这个论坛之前,我仔细检查了一下: mysql正在运行 配置文件有一些小改动: