Мы используем cookie-файлы
Для оптимизации работы нашего сайта мы используем cookie-файлы. Продолжая использовать сайт, Вы соглашаетесь с использованием cookie-файлов.
  • UAH
  • USD
  • RUB
  • EUR
  • +38(044) 392-74-33  Киев
  • +38(057) 728-39-00  Харьков
  • +38(056) 794-38-31  Днепр
  • +38(032) 229-58-93  Львов
  • +38(048) 738-57-70  Одесса
  • +38(093) 170-15-42  Life
  • +38(067) 400-88-44  Киевстар
  • +38(095) 630-90-82  MTC
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7(499) 348-28-61  Москва

Хостинг. mysql_connect, php, ошибки

Форумы Хостинг mysql_connect, php, ошибки
dano
6 лет
хостинг: есть
домен: нет
mysql_connect, php, ошибки
Добрый день, помогите разобраться.

Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in ...

Гуглил ошибку, пишут про то, что не верно указан хост при подключении, у меня верно, указываю хост из панели. (ЮЗЕР.mysql.ukraine.com.ua)

Запускаю скрипт отдельно, рядом лежит движок, опенкарт - работает норм.
Вот кусок кода http://pics.inweb.ua/tutb_ko/17...
eugen
6 лет
хостинг: есть
домен: есть
По всей видимости, попытка подключения все-таки идет на localhost, а не на ЮЗЕР.mysql.ukraine.com.ua. Возможно, в каком-то другом конфиге нужно прописывать параметры подключения?
Попробуйте добавить в скрипт перед mysql_connect() в 29 строке дамп хоста, к которому Вы подключаетесь:
var_dump($db_host);
dano
6 лет
хостинг: есть
домен: нет
Да, вы правы, переменная содержала пустую строку, поправил, спасибо.
Теперь хочу выполнить дамп через щелл, файл создается, но остается пустым.
http://pics.inweb.ua/tutb_ko/17...

$cmd_db = "mysqldump ".$db_name." --user=".$db_user." --password=".$db_pass." > ".$_SERVER['DOCUMENT_ROOT']."/dump.sql";
shell_exec($cmd_db);

Подскажите, где я ошибся?
eugen
6 лет
хостинг: есть
домен: есть
На первый взгляд вижу одну ошибку - не указан хост для подключения. Замените "mysqldump " на "mysqldump -h $db_host "
dano
6 лет
хостинг: есть
домен: нет
Добавил, ситуация не изменилась, файл есть, но пустой. Дата создания меняется.

$cmd_db = 'mysqldump '.$db_name.' --host='.$db_host.' --user='.$db_user.' --password='.$db_pass.' > '.$_SERVER['DOCUMENT_ROOT'].'/dump.sql';
eugen
6 лет
хостинг: есть
домен: есть
Добавьте в конец команды сохранение ошибки:
...'/dump.sql 2>&1';

В дамп будет записана ошибка, из-за которой не удалось сделать дамп.
dano
6 лет
хостинг: есть
домен: нет
Спасибо за совет.
Содержание файла:
sh: mysqldump: команда не найдена

Как быть? На всех хостинг-аккаунтах нет этой команды?
eugen
6 лет
хостинг: есть
домен: есть
Она есть. Укажите полный путь: /usr/bin/mysqldump
dano
6 лет
хостинг: есть
домен: нет
В файле:
sh: /usr/bin/mysqldump: Нет такого файла или каталога

я пробовал это после "sh: mysqldump: команда не найдена"
87toqwyegf
6 лет
хостинг: нет
домен: нет
путь к mysqldump - /usr/local/mysql/bin/mysqldump
Подробнее - https://www.ukraine.com.ua/faq/kak-s-...
dano
6 лет
хостинг: есть
домен: нет
Спасибо, все заработало.
Если кому понадобится:
$cmd_db = '/usr/local/mysql/bin/mysqldump '.$db_name.' --host='.$db_host.' --user='.$db_user.' --password='.$db_pass.' > '.$_SERVER['DOCUMENT_ROOT'].'/dump.sql';
shell_exec($cmd_db);
Участвовать в общении на этом форуме могут только
зарегистрированные пользователи.

Если вы уже зарегистрированы Вам необходимо войти на форум.

Тема закрыта по истечению срока давности.
Горячая линия
(044)
392 74 33
другие города