Задавайте вопросы, мы ответим
Вы не зашли.
Добрый день!
Имеется 2 компьютера(находятся в одной сети) на одном установлен mysql на другом находится сайт, любой запрос посылаемый с сайта на 1 машину очень долго выполняются.
mysql_connect($host, $user, $pass) or die(mysql_error());
mysql_select_db($char_data) or die(mysql_error());
// Общий онлайн
$sql = "SELECT SUM(online) FROM characters";
$sqlquery = mysql_query($sql) or die(mysql_error());
$memb = mysql_result($sqlquery,0,0);
Такой запрос с сайта обрабатывается 6-9сек, если его выполнить на 1 машине(где установлен mysql) выполняется за секунду.... Помогите очень прошу...
Отредактированно freed (06.06.2010 11:24:42)
Неактивен
Вот Вам рабочее предположение: медленно происходит не обработка запроса,
а соединение (например, пытается отрезолвить хост, а обратной записи нету).
Проще всего проверить, если использовать mysql_pconnect() — первый запрос
будет работать долго (время установления соединения), а второй уже пройдет
быстро по открытому соединению.
Ну и --skip-name-resolve со стороны сервера не повредит.
Неактивен
Paulus, благодарю!!
Отредактированно freed (06.06.2010 17:46:45)
Неактивен
Уважаемый paulus, после внесения изменений в my.ini
skip-name-resolve
перестало заходить в navicat на локалхост, пишет 1130 -host 127.0.0.1 is hot allowed to connect to this Mysql server
Неактивен
С локалхоста лучше заходить таки через unix socket (и тогда при проверке прав
будет проверяться username@localhost). А если используете tcp, то нужно явно
выдать права на подключение username@127.0.0.1.
Неактивен
paulus написал:
С локалхоста лучше заходить таки через unix socket (и тогда при проверке прав
будет проверяться username@localhost). А если используете tcp, то нужно явно
выдать права на подключение username@127.0.0.1.
Правильно ли я Вас понял?
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'пароль'; FLUSH
PRIVILEGES;
Отредактированно freed (07.07.2010 20:11:08)
Неактивен
Если root, то можно и WITH GRANT OPTION
и FLUSH не нужно — нормальные команды сразу применяют права.
Неактивен
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'пароль' WITH GRANT OPTION;
Как я понял, данным способом мы добавляем еще 1 root только уже не на localhost а на 127.0.0.1 ? Можно также добавить через сторонние утилиты(navicat) пользователя root и указать хост 127.0.0.1?
Отредактированно freed (07.07.2010 20:49:16)
Неактивен
Да. Вот интересно, что Вы потратили почти час на вопрос на форуме вместо того,
чтобы попробовать Тем более, что знаете ответ.
Неактивен
Спасибо, многоуважаемый paulus за ваш ответ!
Неактивен