Привет!
Проблема такая что не могу приконнектиться к mysql извне. Поставил его и rpm. Версия "mysql Ver 14.7 Distrib 4.1.11, for mandrake-linux-gnu (i586)". В логах пишет
051006 23:19:42 mysqld started
051006 23:19:43 InnoDB: Error: page 2 log sequence number 0 43886
InnoDB: is in the future! Current system log sequence number 0 43664.
InnoDB: Your database may be corrupt.
051006 23:19:43 InnoDB: Error: page 11 log sequence number 0 43886
InnoDB: is in the future! Current system log sequence number 0 43664.
InnoDB: Your database may be corrupt.
051006 23:19:43 InnoDB: Error: page 45 log sequence number 0 43892
InnoDB: is in the future! Current system log sequence number 0 43664.
InnoDB: Your database may be corrupt.
051006 23:19:43 InnoDB: Error: page 0 log sequence number 0 43886
InnoDB: is in the future! Current system log sequence number 0 43664.
InnoDB: Your database may be corrupt.
051006 23:19:43 InnoDB: Started; log sequence number 0 43664
/usr/sbin/mysqld: ready for connections.
Version: '4.1.11' socket: '/var/lib/mysql/mysql.sock' port: 0 Source distribution
Хотя таблицами InnoDB я не полюзуюсь вооще. А как бы сама база сначало стояла на 4,0,xx потом сервак слетел и на новый поставил новее mysql. Вот такая фигня с ним и началась. Все конфиги стандартные. netstat говорит что он порт 3306 не слушает. Что делать? Может кто нить помогет а?
>Привет!
>Проблема такая что не могу приконнектиться к mysql извне. Поставил его и
>rpm. Версия "mysql Ver 14.7 Distrib 4.1.11, for mandrake-linux-gnu (i586)".
> В логах пишет
>051006 23:19:42 mysqld started
>051006 23:19:43 InnoDB: Error: page 2 log sequence number 0 43886
>
>InnoDB: is in the future! Current system log sequence number 0 43664.
>
>InnoDB: Your database may be corrupt.
>051006 23:19:43 InnoDB: Error: page 11 log sequence number 0 43886
>
>InnoDB: is in the future! Current system log sequence number 0 43664.
>
>InnoDB: Your database may be corrupt.
>051006 23:19:43 InnoDB: Error: page 45 log sequence number 0 43892
>
>InnoDB: is in the future! Current system log sequence number 0 43664.
>
>InnoDB: Your database may be corrupt.
>051006 23:19:43 InnoDB: Error: page 0 log sequence number 0 43886
>
>InnoDB: is in the future! Current system log sequence number 0 43664.
>
>InnoDB: Your database may be corrupt.
>051006 23:19:43 InnoDB: Started; log sequence number 0 43664
>/usr/sbin/mysqld: ready for connections.
>Version: '4.1.11' socket: '/var/lib/mysql/mysql.sock' port: 0 Source distribution
>Хотя таблицами InnoDB я не полюзуюсь вооще. А как бы сама база
>сначало стояла на 4,0,xx потом сервак слетел и на новый поставил
>новее mysql. Вот такая фигня с ним и началась. Все конфиги
>стандартные. netstat говорит что он порт 3306 не слушает. Что делать?
>Может кто нить помогет а?
Ну хоть кто нить. Ну просто ваааще не понимаю в чём могет быть проблема
Ну хоть кто нить что нить скажите. Может прав ему больше дать, так как он не может начать слушать на порту 3306?
Если innodb не пользуешься вообще, то что тебе мешает закомментировать в my.cnf все строки, касающиеся innodb?
>Если innodb не пользуешься вообще, то что тебе мешает закомментировать в my.cnf
>все строки, касающиеся innodb?
Вот что находится в my.cnf[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock# Default to using old password format for compatibility with old and
# shorter password hash.
# Reference: http://dev.mysql.com/doc/mysql/en/Password_hashing.html
old_passwords=1
[mysql.server]
user=mysql
basedir=/var/lib[mysqld_safe]
err-log=/var/log/mysqld/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
sockstat -4 | grep 3306
покажи, а?Вот пример
[root@k.com.ua] /usr/home/skif/:sockstat -4 | grep 3306
mysql mysqld 551 5 tcp4 *:3306 *:*
[root@k.com.ua] /usr/home/skif/:
>sockstat -4 | grep 3306
>покажи, а?
>
>Вот пример
>[root@k.com.ua] /usr/home/skif/:sockstat -4 | grep 3306
>mysql mysqld 551
> 5 tcp4 *:3306
> *:*
>
>[root@k.com.ua] /usr/home/skif/:Как бы у нас нет такой команды. Есть netstats и она говорит что на серваке 3306 порт никтоне слушает.
Верно.
Вот примерчик, поправить по вкусу.
my.cnf:[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock# Here follows entries for some specific programs
# The MySQL server
[mysqld]
datadir=/usr/local/var/db/mysql
language=russian
port = 3306
socket = /tmp/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log-bin
server-id = 1# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /usr/local/var/db/mysql/
innodb_data_file_path = ibdata1:100M:autoextend
innodb_log_group_home_dir = /usr/local/var/db/mysql/
innodb_log_arch_dir = /usr/local/var/db/mysql/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 32M
innodb_additional_mem_pool_size = 4M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50[mysqldump]
quick
max_allowed_packet = 16M[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M[mysqlhotcopy]
interactive-timeout
КАк бы тут тоже ничего нового нет и ето не помогает!
>КАк бы тут тоже ничего нового нет и ето не помогает!
Больше нечего больше никому сказать :)?
Посмотри в базе mysql таблица user для юзера root в поле host, вроде должно стоять не имя хоcта, а "%".
>Посмотри в базе mysql таблица user для юзера root в поле host,
>вроде должно стоять не имя хоcта, а "%".
Как бы больше то проблема не с доступом а с тем что что MySql не хочет слушать порт, т.е. к нему не возможно просто приконнектиться. Пишет что
ERROR 2003 (HY000): Can't connect to MySQL server on XXXXX
>>Посмотри в базе mysql таблица user для юзера root в поле host,
>>вроде должно стоять не имя хоcта, а "%".
>Как бы больше то проблема не с доступом а с тем что
>что MySql не хочет слушать порт, т.е. к нему не возможно
>просто приконнектиться. Пишет что
>ERROR 2003 (HY000): Can't connect to MySQL server on XXXXXman mysqld
ну например --port=3306 --socket=/tmp/mysql.sock
а дальше разумеется смотреть GRANT'ы и задать требуемыевместо sockstat можно использовать:
# netstat -l
или
# lsof -i tcp:порт_номер
Оно самое и есть!!!
[~]# /usr/local/mysql/bin/mysql -h 192.168.0.151
ERROR 1130 (00000): Host '192.168.0.151' is not allowed to connect to this MySQL serverМеняем "server.ru" на "%"
Ребут MySQL нах.
И имеем счастье...[~]# /usr/local/mysql/bin/mysql -h 192.168.0.151
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 90 to server version: 4.1.14-log
Ан нет, гоню блин... ;)
Как вариант еще смотри правила firewall...
Извените что ответ так поздно.
Было де уже сказано что MySql не слушает вооще порт 3306. Вот в этом то и была проблема. Почему то был файл настройка my.cnf приведённый выще. Но почему то в Mandrive есть ещё один файл конфигурации который соединяется с этимю Находится он в /etc/sysconfig и называется mysqld в котором почему то стояла такая строчка
MYSQLD_OPTIONS="--skip-networking"
В связи с этим при присоединени всех опций была отключена опция подключение по сети к нему.
Всем спасибо большое
Столкнулся с такой-же проблемой. Еще один вариант решения - в файле конфигурации /etc/my.cnf возможно присутствие строчки skip-networking. В случае если данная строчка раскоментируйте ее - проблема должна разрешиться.
мой случай# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address= 127.0.0.1сменил на 0.0.0.0 и заработало (раньше по умолчанию убунта так не издевалась;)