powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Кто чем дампы накатывает?
25 сообщений из 34, страница 1 из 2
Кто чем дампы накатывает?
    #39213148
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Физического доступа к серверу с базой нет, есть только доступ к MySQL по 3306, делаю стандартный дамп через mysqldump, на выходе файл 35 Гб примерно. Далее копирую файл на второй сервер и через MySQL пытаюсь дамп накатить, понимаю, что на это уйдёт несколько лет (вроде и сервер - 2 процессора Xeon-а, 12 ГБ ОЗУ), нагрузки при этом практически не создаётся, MySQL чуток процессор отжирает и всё, но данные так медленно вставляются, что жуть, небольшая табличка гига на три накатывалась несколько дней. В общем плюнул, полез гуглить, в верхушку дампа добавил FOREIGN_KEY_CHECKS=0, UNIQUE_CHECKS=0, AUTOCOMMIT=0 и в конец файла дампа тоже самое, возвращая первоначальные значения, плюс COMMIT. Снова запустил накатывание дампа и пошло гораздо шустрее, за сутки уже несколько таблиц накатилось, наверное месяца за пол база вся и накатится. Вопрос - кто чем дампы накатывает и можно ли убыстрить сей процесс, не ждёте же неделями?
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213151
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stФизического доступа к серверу с базой нет, есть только доступ к MySQL по 3306, делаю стандартный дамп через mysqldump, на выходе файл 35 Гб примерно. Далее копирую файл на второй сервер и через MySQL пытаюсь дамп накатить, понимаю, что на это уйдёт несколько лет (вроде и сервер - 2 процессора Xeon-а, 12 ГБ ОЗУ), нагрузки при этом практически не создаётся, MySQL чуток процессор отжирает и всё, но данные так медленно вставляются, что жуть, небольшая табличка гига на три накатывалась несколько дней. В общем плюнул, полез гуглить, в верхушку дампа добавил FOREIGN_KEY_CHECKS=0, UNIQUE_CHECKS=0, AUTOCOMMIT=0 и в конец файла дампа тоже самое, возвращая первоначальные значения, плюс COMMIT. Снова запустил накатывание дампа и пошло гораздо шустрее, за сутки уже несколько таблиц накатилось, наверное месяца за пол база вся и накатится. Вопрос - кто чем дампы накатывает и можно ли убыстрить сей процесс, не ждёте же неделями?


может посмотреть на другие способы переноса :
(а) просто файлы или (б) файловую систему ...
кажется линукс LVM copy можно присобачить...
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213152
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есче вариант, использовать зип таблицы.
Это имее смысл если медленые диски но много
памяти и быстрый процессор -- т.е. если проигрыш
на архивацию-разархивацию компенсируется выигрышем
из-за меньшего обрашение к диску.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213153
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
javajdbcможет посмотреть на другие способы переноса :
(а) просто файлы или (б) файловую систему ...
кажется линукс LVM copy можно присобачить...

Я пока просто не нашёл доступа к серверу с бд по ssh, вроде можно что-то в каком-то виде выгрузить в виде файлов (это Amazon RDS). А так конечно идея хорошая, примерно как в MS SQL, два файла с базой скопировал, подцепил и готово.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213154
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
javajdbcесче вариант, использовать зип таблицы.
Это имее смысл если медленые диски но много
памяти и быстрый процессор -- т.е. если проигрыш
на архивацию-разархивацию компенсируется выигрышем
из-за меньшего обрашение к диску.

Сейчас глянул, ресурсы (CPU 0.2% и ОЗУ) висят более менее свободными, а вот диск забит mysql-ем.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213155
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stjavajdbcесче вариант, использовать зип таблицы.
Это имее смысл если медленые диски но много
памяти и быстрый процессор -- т.е. если проигрыш
на архивацию-разархивацию компенсируется выигрышем
из-за меньшего обрашение к диску.

Сейчас глянул, ресурсы (CPU 0.2% и ОЗУ) висят более менее свободными, а вот диск забит mysql-ем.


вот несколько настроек на компрессию:
https://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html#sysvar_innodb_compression_level

еше вариант: есть опция: одна таблица -- один файл.
Может это поможет как-то распаралелить вставки...


другие варианты: билк инсерт, повышения каких нибудь буферов...
Завтра народ в России проснется -- советов накидают...
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213198
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача - перенести копию текущего состояния БД? тогда идём читать
Backing Up Raw Data from a Slave . Трудно придумать что-то более быстрое...
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213241
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaЗадача - перенести копию текущего состояния БД?

Да, есть ip-адрес, порт 3306 и логин/пароль к mysql, нужно перенести бд с того сервера на другой. ssh и прочего к серверу с mysql нет.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213285
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И это mysqldump все 35 гектар дампа тащит с сервера к себе на клиентскую станцию? и даже нет возможности выгрузить данные ТАМ в файл, а потом из файловой системы скопировать полученный файл? по FTP там...

Ну тогда я бы предложил установить локальный MySQL, после получения дампа (само собой, только данные) влить их в БД, затем добить структуру до полной (индексы, констрейнты, триггеры и протчая), а потом полученную БД переносить на целевой сервер - бинарами. Или к целевому серверу тоже доступ никакой?
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213344
m0nk3y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysqldump --no-data - получаем структуру
http://dev.mysql.com/doc/refman/5.7/en/select-into.html - сливаем данные
http://dev.mysql.com/doc/refman/5.7/en/load-data.html - заливаем данные
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213348
m0nk3y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213395
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaИ это mysqldump все 35 гектар дампа тащит с сервера к себе на клиентскую станцию? и даже нет возможности выгрузить данные ТАМ в файл, а потом из файловой системы скопировать полученный файл? по FTP там...

Ну тогда я бы предложил установить локальный MySQL, после получения дампа (само собой, только данные) влить их в БД, затем добить структуру до полной (индексы, констрейнты, триггеры и протчая), а потом полученную БД переносить на целевой сервер - бинарами. Или к целевому серверу тоже доступ никакой?

Да, все 35 Гб тащу на второй сервер через mysqldump, просто удалённо подрубаюсь к тому первому mysql-серверу. Ко второму серверу, на который накатываю дамп, доступ полный, можно делать с ним что угодно.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213403
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stДа, все 35 Гб тащу на второй сервер через mysqldump, просто удалённо подрубаюсь к тому первому mysql-серверу. Ко второму серверу, на который накатываю дамп, доступ полный, можно делать с ним что угодно.Тогда можно попробовать на втором подключиться к первому через движок FEDERATED, воссоздать таблицы и копировать данные командой INSERT ... SELECT ... .
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213404
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m0nk3y http://dev.mysql.com/doc/refman/5.7/en/select-into.html - сливаем данныеА теперь расскажи, как он получит файл с удалённого сервера... да и не факт, что у него есть привилегия FILE...

st_stКо второму серверу, на который накатываю дамп, доступ полный, можно делать с ним что угодно.Ну тогда просто дамп туда в виде файла, и там локальное восстановление в "минимальную" структуру. С последующим восстановлением индексов и пр.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213408
m0nk3y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

я же во втором сообщении все написал, давай повторю еще раз
авторВ догонку
http://stackoverflow.com/questions/4743419/mysql-dump-to-localhost-outfile-from-a-remote-database
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213410
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FK и триггеров нет, индексы как я понимаю отрубает сам mysqldump (в файле дампа перед каждой таблицей вижу /*!disable indexes*/ и после - /*!enable indexes*/). Может в диск упирается всё? 32 миллиона на 4 Гб записей сейчас вставляются довольно быстро, 50 Гб и 5 млн записей - висят уже очень долго.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213413
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m0nk3y , ну то есть это ни разу не SELECT INTO, а обычный SELECT в консоль. Это возможно на "простых" данных. А вот если там, к примеру, поля с разными кодировками, или там блобы с фотографиями - будут проблемы.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213539
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m0nk3ymysqldump --no-data - получаем структуру
http://dev.mysql.com/doc/refman/5.7/en/select-into.html - сливаем данные
http://dev.mysql.com/doc/refman/5.7/en/load-data.html - заливаем данные

То есть сначала делаем дамп структуры, затем накатываем её на втором сервере, после чего на первый сервер делаем 400 sql-запросов (столько таблиц в базе), создаём 400 файлов и затем их ещё 400 запросами накатываем на втором сервере? Тут сразу вопрос - а будет ли это быстрее того, что уже есть? По сути и сейчас дамп восстанавливается с отключенными индексами, проверкой на уникальность ключей, FK и т.д. и т.п.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213582
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftst_stДа, все 35 Гб тащу на второй сервер через mysqldump, просто удалённо подрубаюсь к тому первому mysql-серверу. Ко второму серверу, на который накатываю дамп, доступ полный, можно делать с ним что угодно.Тогда можно попробовать на втором подключиться к первому через движок FEDERATED, воссоздать таблицы и копировать данные командой INSERT ... SELECT ... .

FEDERATED - интересная штуковина. Здесь наверное тоже надо тестировать, быстрее оно будет или нет.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213625
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stнадо тестировать, быстрее оно будет или нет.Сперва надо убедиться, есть ли она на целевом сервере. А если есть - разрешена ли...
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213822
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akinast_stнадо тестировать, быстрее оно будет или нет.Сперва надо убедиться, есть ли она на целевом сервере. А если есть - разрешена ли...

Гляну подробней, может ещё какие варианты есть с тем первым сервером. Вообще заметил такую особенность - таблица, в ней три числовых поля, 32 миллиона записей, занимает 4 Гб, накатилась за 1 час. Вторая таблица, 5 млн записей (то есть намного меньше), 50 гб общий вес, много заполненных текстовых полей, сейчас загружено 4 Гб из 50-ти, потребовались сутки, размер вставленных данных тот же, а загружает в 12 раз медленней. То есть количество записей и соотносительный размер роли не играет, втупляет при вставке текстовой информации в большее количество полей.

Печаль вся в том, что таких баз несколько. Если брать скорость по 4 Гб в сутки, то примерно за месяц восстановится дамп первой базы, плюс пару месяцев на вторую, а там август, как раз отпуск
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213841
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И по размерам, Heidi показывает размер баз в пределах 250-300 Гб, размер же дампа (не сжатого) ~35 Гб, 4 Гб - это размер от 250-300, не от дампа.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39213848
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Размер БД показывается с учётом индексов и степени заполнения файлов таблиц - т.е. количество занимаемого на томе места. А в дампе - только данные, потому они и меньше. Но вот уменьшение объёма в 7-8 раз наводит на неприятные мысли - многовато больно.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39214059
ТС, проверьте скорость диска на запись. Если там линукс, то перейдите в каталог, куда мускул пишет свои файлы БД и дайте такую команду:
Код: plaintext
dd if=/dev/zero of=test_file_for_speedtest bs=64k count=16k conv=fdatasync; unlink test_file_for_speedtes
Как-то у меня была проблема со скоростью диска на VPS, исправили после обращения в техподдержку.
...
Рейтинг: 0 / 0
Кто чем дампы накатывает?
    #39214193
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ГромыхательТС, проверьте скорость диска на запись. Если там линукс, то перейдите в каталог, куда мускул пишет свои файлы БД и дайте такую команду:
Код: plaintext
dd if=/dev/zero of=test_file_for_speedtest bs=64k count=16k conv=fdatasync; unlink test_file_for_speedtes
Как-то у меня была проблема со скоростью диска на VPS, исправили после обращения в техподдержку.

Код: powershell
1.
2.
3.
4.
5.
[root@free home]# cd /var/lib/mysql/
[root@free mysql]# dd if=/dev/zero of=test_file_for_speedtest bs=64k count=16k conv=fdatasync; unlink test_file_for_speedtest
16384+0 records in
16384+0 records out
1073741824 bytes (1.1 GB) copied, 7.66735 s, 140 MB/s
...
Рейтинг: 0 / 0
25 сообщений из 34, страница 1 из 2
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Кто чем дампы накатывает?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]