Текущее время: 11 июл 2020, 21:59

Русская поддержка форума phpBB

Это сайт русской поддержки phpBB

Восстановление базы данных MySQL. Ошибка ERROR 1153 (08S01) at line 4690: Got a packet bigger than 'max_allowed_packet' bytes

Аватара пользователя
Сообщения: 358
Стаж: 8 лет 4 месяца
Карма: 30
Россия

Сообщение » 31 мар 2019, 20:04

Если вы администратор сервера или VPS, вы можете восстанавливать базы данных через SSH (shell)

Это дает возможность без проблем восстанавливать и резервировать базы данных MySQL

1. Восстановление базы данных (импортировать базу данных)

Код: Выделить всё
mysql -u имя_пользователя -p -h имя_сервера_БД имя_базы < dump.sql

Например:
имя_пользователя: userdb
имя_сервера_БД: localhost (в основном на всех серверах)
имя_базы: dbname
dump.sql - сама база данных

Это будет выглядеть так
mysql -u userdb -p -h localhost dbname < dump.sql

после запуска команды, у вас запросит пароль для пользователя базы данных userdb, естественно вы должны знать его.
Пароль получаете при создании самой базы данных.

2. Если вам нужно экспортировать (резервировать, создать копию) базы данных MySQL, то это будет выглядеть так

Код: Выделить всё
mysqldump -u имя_пользователя -p -h имя_сервера_БД имя_базы > dump.sql


3. Ошибка "max_allowed_packet".

Иногда бывает что из-за большой базы данных и стандартной настройки MySQL сервера выдается ошибка в виде
ERROR 1153 (08S01) at line 4690: Got a packet bigger than 'max_allowed_packet' bytes
т.е. стоит лимит на посылку пакетов в самой настройки MySQL

Вы можете исправить это без проблем.
Найдите файл my.cnf
Вероятно он находится в /etc/my.cnf
Открываем и редактируем этот файл

root@192.168.0.1 [/] vi /etc/my.cnf
В нем найдите строку max_allowed_packet и поменяйте значения, если у вас стоит 16M или меньше или больше, то поставьте больше того что стоит.
В место значения в строке max_allowed_packet = 16M
поставьте max_allowed_packet = 32M

сохраняем файл и перезапускаем MySQL
root@192.168.0.1 [/] service mysql restart

Не забудьте, если вы пытались восстанавливать базу и у вас выдало эту ошибку, то вам необходимо будет удалить все таблица которые создались.
и запустить восстановление еще раз.

Информация как увеличить лимит пакетов на официальном сайте MySQL
B.5.2.10. Packet too large
http://dev.mysql.com/doc/refman/5.0/en/ ... large.html

Вернуться в Примеры решений по Linux



Кто сейчас на конференции

Сейчас этот форум просматривают: нет пользователей онлайн и гости: 1