Первый раз; Я был заядлым читателем SO уже давно. Это мой первый вопрос. Я удивлен, что это будет связано с базами данных! Обратите внимание, что я думаю, что проблема может как-то быть связана с моими настройками, поэтому я не уверен, что вы сможете мне помочь, но я подумал, что могу попробовать!
Проблема:
Итак, я полностью новичок в базах данных. Я использую C # с Mono (v2.6.7) и MonoDevelop (v2.4) для Mac (OS X 10.6.4). В основном из-за простой настройки, я хочу использовать XAMPP для игры. Теперь я хочу подключиться к моей тестовой базе данных, используя MySQL .NET Connector (v6.3.5), как , рекомендованный Mono .
Я следовал рекомендациям на странице Mono (я также просмотрел собственное руководство по установке MySQL ) и установил необходимые файлы в GAC. Я добавил все необходимые ссылки на мой проект, и мой код прекрасно компилируется. Я все еще не могу подключиться к своей базе данных XAMPP через код.
Интересно то, что я могу получить доступ к базе данных через Терминал (./mysql -u tester -p
и делать use test
) без каких-либо проблем. Кроме того, mysql_client_test
также работает нормально, и все, о чем я могу думать, указывает на работоспособность сервера.
Вот мой код:
string connectionString = "Server=localhost;User ID=tester;Password=******;Database=test;Port=3306;Pooling=false";
MySqlConnection connection = new MySqlConnection( connectionString );
try
{
Console.WriteLine( "Trying to open database connection ..." );
connection.Open();
}
catch(Exception ex)
{
Console.WriteLine(ex.ToString());
}
connection.Close();
Вот исключение, которое я получаю при попытке подключения из кода:
Попытка открыть соединение с базой данных ...
MySql.Data.MySqlClient.MySqlException: невозможно подключиться к любому из указанных хостов MySQL. ---> System.Net.Sockets.SocketException: соединение отказано
в System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] в: 0
в System.Net.Sockets.Socket + Worker.Connect () [0x00000] в: 0
--- Конец внутренней трассировки стека исключений ---
в MySql.Data.MySqlClient.NativeDriver.Open () [0x00000] в: 0
в MySql.Data.MySqlClient.Driver.Open () [0x00000] в: 0
в настройках MySql.Data.MySqlClient.Driver.Create (настройки MySql.Data.MySqlClient.MySqlConnectionStringBuilder) [0x00000] в: 0
в MySql.Data.MySqlClient.MySqlConnection.Open () [0x00000] в: 0
Любая информация будет принята с благодарностью. Кроме того, если у вас есть предложения по более простой настройке для игры с MySQL - это будет очень ценно! Заранее спасибо!
Правки: (информация запрошена Филом Хантом)
netstat -na | grep LIST
tcp4 0 0 *.21 *.* LISTEN
tcp46 0 0 *.80 *.* LISTEN
tcp4 0 0 *.63912 *.* LISTEN
tcp4 0 0 127.0.0.1.26164 *.* LISTEN
tcp4 0 0 *.17500 *.* LISTEN
tcp4 0 0 127.0.0.1.631 *.* LISTEN
tcp6 0 0 ::1.631 *.* LISTEN