首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >连接到不同服务器上的mysql的c#

连接到不同服务器上的mysql的c#
EN

Stack Overflow用户
提问于 2012-07-20 23:06:32
回答 5查看 1.2K关注 0票数 0

我有一个c# web服务运行在与我的MySQL数据库不同的web空间上。我想要将它们链接在一起,所以有以下c#代码。

代码语言:javascript
运行
复制
            server = "www.***.com";
        database = "MyDataBase";
        uid = "admin";
        password = "Password";
        string connectionString;
        connectionString = "SERVER=" + server + ";" + "DATABASE=" +
        database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";

        connection = new MySqlConnection(connectionString);
        try
        {
            connection.Open();
        }
        catch (MySql.Data.MySqlClient.MySqlException ex)
        {
            Console.WriteLine(ex.Message);
        }

在catch异常中,我得到了以下错误

“拒绝用户'admin'@'cpc13-ches4-2-0-cust195.9-1.cable.virginmedia.com‘访问(使用密码:是)”

我目前只是在本地运行它,所以我不知道这是有帮助还是有阻碍。

EN

回答 5

Stack Overflow用户

发布于 2012-07-20 23:08:55

检查您的MySQL用户设置,确保允许admin帐户从localhost以外的计算机登录。

您可以像这样验证允许用户从哪些主机进行连接:

代码语言:javascript
运行
复制
select user, host from mysql.user

如果admin用户只能从本地主机连接,那么您要么希望为正在连接的新主机设置权限,要么希望为使用%的所有主机设置权限。

您可以像这样查看admin在本地主机上拥有哪些权限:

代码语言:javascript
运行
复制
show grants for 'admin'@'localhost'

然后,您可以复制/粘贴这些授权,将主机部分更改为在另一个主机上授予相同的权限。

票数 2
EN

Stack Overflow用户

发布于 2012-07-20 23:09:41

您必须授予admin @cpc访问权限.......

登录mysql并执行以下操作:

代码语言:javascript
运行
复制
mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%'
->     WITH GRANT OPTION;

或者首先使用此命令检查,以首先查看priv。

代码语言:javascript
运行
复制
SHOW GRANTS FOR 'admin'@'localhost';

再试一次。

票数 0
EN

Stack Overflow用户

发布于 2012-07-20 23:09:50

确保您的MySql服务器允许远程连接。也许你的连接字符串并不完全正确。在此处检查连接字符串:http://connectionstrings.com/mysql

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11581983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档