Сбивающий с толку PDO-только проблема: не Может соединиться через гнездо/Доступ, отрицал/Мог, соединяются с сервером (разделенный хозяин)

Таким образом, проблема изменилась от того, каково это было, я оставлю оригинальный вопрос ниже, чтобы предотвратить плохие обзоры на ответах как, я имел после кого-то редактирующего его вопрос, на который я ответил:

Таким образом, я продолжаю работать (действительно хромой) общий хостинг, у которого есть установленный PDO, но он не работает. С параметрами по умолчанию

getMessage();
    }
?>

это бросает это сообщение:

SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

С простым mysql_connect это работает.

И путь гнезда кажется правильным (и phpinfo и этот вопрос:

show variables like 'socket';

подтвердить.

Перенаправления Localhost к 10.103.0.14 (эти данные прибывают из mysql_get_host_info () и в phpMyAdmin),

В PDO, если я заменяю localhost 127.0.0.1, я доберусь

SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (111) 

И если я заменяю localhost 10.103.0.14:

Access denied for user 'USER_NAME'@'10.103.0.14' (using password: YES

И IP адрес (127.0.0.1 и 10.103.0.14) работает с mysql_connect.

Таким образом, по-видимому, проблема возникает из связи PDO.

Кто-то знает, куда это могло прибыть из, или/и какой-либо способ зафиксировать его?

Некоторые данные о сервере:

Версия PHP: 5.2.10 Вы видите phpinfo сервера: http://web.lerelaisinternet.com/abcd.php?v=5 Никакая возможная командная строка. (я знаю, что это должна быть техническая работа suport's, но они - медленный reaaaaaly),

Спасибо

Предыдущий вопрос:

Как найти mysql.sock на общем хозяине (хитрый путь необходимый...)

Таким образом, сегодняшняя проблема: связь PDO не работает над общим хозяином, и она предполагается к (она установлена на сервере). Просто основная связь PDO:

getMessage();
    }
?>

броски это сообщение:

SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Регулярная mysql связь:

mysql_connect("localhost", "THE_USER", "THE_PWD") or die(mysql_error()); 
mysql_select_db("24DLJLRR1") or die(mysql_error());;
echo 'Connected to database 
';

хорошо работает.

Так, по-видимому, это не может найти .sock. Я думаю, определяя, что правильный адрес должен работать, я попробовал некоторый «классический» mysql путь, который я нашел в Интернете без успеха. phpinfo говорит, что это по этому адресу (/var/lib/mysql/mysql.sock) (Версия PHP 5.2.10), Вы видите phpinfo сервера: http://web.lerelaisinternet.com/abcd.php?v=5

Таким образом, я пытаюсь выяснить, где ад это!!! Я пытался посмотреть в интерфейсе phpMyAdmin, но я не мог найти, что информация, плюс он кажется, что phpMyAdmin соединяется с другим сервером (у него есть другой IP адрес, и пытающийся соединиться с ним с php дает ошибку «Неверного пароля»). mysql_connect также соединяется с этим адресом, я думаю, что он перенаправляет к другому серверу с некоторым внутренним паролем/логином.

Хорошо, если у Вас есть какая-либо идея того, как получить эту информацию (техническая поддержка поставщика «решает проблему»... это был 1 месяц...). Также, возможно, проблема возникает из где-то в другом месте, но те же работы материала над другими общими хозяевами...

Потребность PDO состоит в том, потому что я использую структуру Symfony с Доктриной для этого веб-сайта, и плагину Доктрины нужен PDO... Я не хочу делать заново веб-сайт с нуля!

Спасибо за Вашу помощь!

16
задан Julien 26 January 2010 в 12:50
поделиться

3 ответа

Попробуйте:

exec('`which mysql_config` --socket');

Это должно показать вам настроенный сокет.

2
ответ дан 30 November 2019 в 15:38
поделиться

В файле Config.groovy необходимо указать следующие параметры настройки:

grails.gsp.enable.reload=true
grails.gsp.view.dir="/path/to/gsp/views"

Путь к выданному SVN-репо обычно определяется как «grails.gsp.view.dir». Вы можете просто «svn up» каждый раз, когда хотите обновить представления.

Существует одно предостережение: при компиляции представления GSP используется permgen. В конце концов вы закончите работу и вам потребуется перезапустить сервер.

-121--4780226-

В IE7 можно вызвать firebug lite для текущей страницы, вставив в адресную строку следующее:

javascript:var firebug=document.createElement('script');firebug.setAttribute('src','http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js');document.body.appendChild(firebug);(function(){if(window.firebug.version){firebug.init();}else{setTimeout(arguments.callee);}})();void(firebug);

См. http://getfirebug.com/lite.html .

-121--659805-

Можете ли вы попробовать 127,0,0,1 в качестве имени сервера вместо localhost ?

IIRC, с некоторыми драйверами/адаптерами mySQL, решает, используется ли сокет для установления соединения или нет.

4
ответ дан 30 November 2019 в 15:38
поделиться
item = defaultvalue
for item in my_iter:
    pass
-121--755697-

Использование соединения, которое работает, выполните запрос:

show variables like 'socket';

(это ведет себя так же, как оператор выбора) ... и вы получите путь к запуску.

Затем проверьте разрешения файла.

4
ответ дан 30 November 2019 в 15:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: