2012-02-25 4 views
1

Мне сложно подключить мой сайт к базе данных mySQL на хосте. Однако, когда я запускал свой сайт на ПК Apache, он плавно подключался. Сниппет Я использую подключаемое:«Не удается подключиться к локальному серверу MySQL через сокет» на сервере linux

<?php 
    $conn_error = 'Could not connect'; 

    $mysql_host = 'localhost'; 
    $mysql_user = 'root'; 
    $mysql_pass = ''; 

    $mysql_db = 'firstdatabase'; 

    if(!mysql_connect($mysql_host,$mysql_user,$mysql_pass)|| [email protected]_select_db($mysql_db)){ 
     die($conn_error); 
    }else{ 
     //echo 'Connected'; 
    } 
?> 

И это дает мне следующую ошибку, когда я пытаюсь подключиться к MySQL на веб-хостинга:

Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server 
through socket 'MySQL' (2) in /home/umudo/public_html/connectserver.inc.php on line 10 

я искал через Интернет для поиска решение, но не смог найти точного примера этого.

+0

Вы проверили правильность имени пользователя/пароля? –

+1

Я очень сомневаюсь, что пользователь «root» не имеет пароля на вашем хосте. –

+0

Да, у пользователя root нет пароля, потому что я возвращаю его как null. – Umut

ответ

3

Помощь: http://dev.mysql.com/doc/refman/5.0/en/connecting.html

Говорит:

В Unix, MySQL программы лечения имя хоста локальный специально, в образом, который может отличаться от того, что вы ожидаете по сравнению с другими сети на основе программ. Для соединений с localhost MySQL-программы пытаются подключиться к локальному серверу с помощью файла сокета Unix.

Таким образом, вы должны

  • использование «127.0.0.1» вместо «локального», чтобы использовать TCPIP вместо розеток, или
  • позволяют сокеты в MySQL конфигурации сервера (соединение сокетов вероятно, отключен и это вызывает ошибку на linux)

Второй способ лучше - использование сокетов для локальных соединений лучше, чем TCP/IP (лучшая производительность) но у вас нет привилегий для конфигурации mysql на этом сервере.

0

Попробуйте установить phpmyadmin или php5-mysql, как в apt-get install phpmyadmin.

Смежные вопросы