c# - MySQL 访问拒绝 C# 应用程序但不访问工作台

标签 c# mysql database

我正在尝试访问远程 MySQL 数据库。我能够通过 MySQL Workbench 连接、执行查询,但无法通过它与数据库连接的 C# 应用程序执行查询,但由于访问被拒绝,查询未执行 错误:

1142: MySqlException (0x80004005): 拒绝用户 'abc'@'117.196.109.45' 对表 xyz 的 SELECT 命令

我还链接了一个类似的未回答的问题 Remote MySql Access denied for user with C# code but can connect with DbVisualizer

最佳答案

这是一个安全和权限的问题。您的 MySQL Workbench 使用 abc@127.0.0.1,其中 ip 是本地主机。但是 c# 应用程序正在使用远程 ip 您在连接字符串中提供的凭据。

如果您在本地主机上,则在 web.config(或 app.config,如果它不是 webapp)中更改连接字符串中的凭据。

或者通过 Workbench 更改权限并允许该服务器 117.196.109.45 权限。

有关使用 Workbench 设置权限的信息,请观看此视频: https://www.youtube.com/watch?v=qSdbNoW2f-c

请观看此视频了解一般故障排除 https://www.youtube.com/watch?v=DCgRF4KOYIY

关于c# - MySQL 访问拒绝 C# 应用程序但不访问工作台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31189626/

相关文章:

c# - 如何在 select 方法中使用实例名称为类实例成员赋值

javascript - Node.JS 函数返回异步回调函数的值

sql-server - 添加数据库关系以减少连接并提高性能

database - 如何命名 SQLite 数据库,使其没有默认名称 main?

c# - ASP.NET Identity 2.0 随机无效 token

C# List.Remove(对象);

javascript - 如何使用php查找用户一次登录不同的浏览器或不同的系统

php - MySQL:仅返回一个表中的行,其中另一个表的一列中的所有值都相同

php - 如何在 Laravel 4.2 中自动生成特定类别任务的序列号?

c# - 删除表格内容的最快方法