用户访问被拒绝-MySQL连接器/ODBC
本文关键字:连接器 ODBC -MySQL 拒绝 访问 用户 | 更新日期: 2023-09-27 18:29:48
我所在的类涉及使用MySQL ODBC 5.3 ANSI驱动程序连接到数据库。当通过web界面连接到数据库时,我的凭据没有问题。但是,当尝试通过Visual Studio 2013访问数据库时,我收到了一个错误。
首先,我将链接我们用来连接到数据库的代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//Add namespaces needed for database connection
using System.Data;
using System.Data.Odbc;
//Project Lab #1
//By Jane Doe
//SAI 430 - Prof. Smith
//November 11, 2013
namespace ProjectLab1
{
class Program
{
static void Main(string[] args)
{
//Connection string needed to talk to Omnymbus
string conString = "Driver={MySQL ODBC 5.3 ANSI Driver};"
+ "Server=devry.edupe.net;Port=4300;"
+ "Database=Inventory_4264;"
+ "uid=4264;pwd=****";
OdbcConnection connection = new OdbcConnection(conString);
connection.Open();
//Get all data
string theQuery = "SELECT * FROM item";
OdbcDataAdapter DataAdapter = new OdbcDataAdapter(theQuery, connection);
DataSet theData = new DataSet();
DataAdapter.Fill(theData, "item");
DataTable theTable = theData.Tables[0];
//Loop through all data results
foreach (DataRow dataRow in theTable.Rows)
{
Console.WriteLine(dataRow["item_id"].ToString());
}
connection.Close(); //Close connection
//Have program pause to keep from closing console window
Console.WriteLine("All Done - Press ENTER");
Console.ReadLine();
}
}
}
当执行此代码时,我得到以下错误:
"System.Data.Odbc.OdbcException"类型的未处理异常发生在System.Data.dll 中
附加信息:错误[HY000][MySQL][ODBC 5.3(a)Driver]用户'4264'@'71.57.101.56'访问被拒绝(使用密码:是)
我曾尝试通过"管理工具">"数据源"直接连接到数据库,但也没有成功,出现了同样的错误。我也尝试过使用32位和64位版本的连接器,但结果没有差异。这真的给我带来了困难,班上的老师很难提供任何有效的解决方案。
我很感激你们能提供的任何见解
MySQL不允许外部连接时可能会发生此错误。
默认情况下只接受来自localhost的连接。
做到这一点的安全方法是通过ssh隧道(在Linux上)进行连接并进行端口转发。否则,您也必须允许用户从其他设备连接。
请参见此处:http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html
出于安全原因,不建议使用远程连接!