2012-04-20 2 views
0

моего кода вызова выглядит следующим образомне удается подключиться к MySQL с помощью MySQL ++

bool suc = conn.connect("mydb", "localhost", "root", ""); 
if (suc) 
{ 
cout << "success" << endl; 
} 
else 
{ 
cout << "fail " << conn.error() << endl; 
} 

и MySQL сервер работает, но программа не говоря не удается подключиться к локальному серверу MySQL через гнездо «/ TMP/MySQL .sock '(111)

Неужели кто-нибудь встретил такую ​​проблему?

+0

Либо файл сокета не находится в/tmp, либо mysql не запущен. Если он подключается, но не может войти в систему, вместо этого вы получите разрешение. Файл сокета вряд ли будет в/tmp, так как этот каталог может быть автоматически очищен ОС. Скорее всего, где-то где-то в '/ var', но вам нужно проверить файл .cnf/.ini mysql, чтобы узнать, что это на самом деле. –

+0

У меня есть /tmp/mysql.sock файл, и mysql тоже запущен, я могу войти в систему, используя имя пользователя root и пустой пароль. подождите, что это полный путь .cnf/.ini, я хочу пойти на проверку. – speedmancs

+0

Можете ли вы подключиться к нему с помощью командной строки 'mysql'? –

ответ

0

конфигурационный файл Mysql, скорее всего, находится здесь /etc/my.cnf

Если Mysql работает, это может быть полезно взглянуть на журнал, он должен находиться в каталоге/вар/Журнал/

Названный что-то вроде:
mysql.log
mysql.err
mysqld.log
mysqld.err

$ ls -l /var/log/ 
// when you have the name try 
$ tail -n 50 /var/log/LogName 
Смежные вопросы