SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 07.05.2010 23:28:55

mc-tolyan
Участник
Зарегистрирован: 22.04.2010
Сообщений: 9

Таблицы одной БД на разных винчах?

Здравствуйте.
Суть такова: есть несколько таблиц, в которые почти постоянно добавляются данные. Из-за этого выборка из других таблиц (в которые данные НЕ добавляются) сильно замедляется (винч не справляется). Возможно ли разместить таблицы, в которые постоянно добавляются данные, на отдельном винчестере? Повысит ли такое решение скорость выборки данных из других таблиц? Или есть какое-то другое решение?
PS: особых средств на обновление оборудования нетsmile
Просто для информации: Медленно именно из-за винча. Процессор почти не грузится. В таблицах от 500к до 10млн записей, и присутствует по 4 индекса, один из которых полнотекстовый.

Неактивен

 

#2 08.05.2010 14:53:17

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Таблицы одной БД на разных винчах?

Самый простой способ — остановить сервер, перенести нужные таблицы
в соответствующий раздел и поставить символические ссылки на унесенные
файлы.

Если Windows, то всё хуже: в ней есть возможность делать псевдосимволи-
ческие переносы для баз целиком (т.е. таблицу не унесете). В NTFS была
возможность делать символические ссылки, но не знаю, насколько она работо-
способная (впрочем, проверить стоит).

Неактивен

 

#3 08.05.2010 22:16:01

mc-tolyan
Участник
Зарегистрирован: 22.04.2010
Сообщений: 9

Re: Таблицы одной БД на разных винчах?

Да, к сожалению, пока Windows.
Попробую разобраться со ссылками. Спасибо.
А будет прирост производительности в данном случае?

Неактивен

 

#4 11.05.2010 12:13:15

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Таблицы одной БД на разных винчах?

Если упираетесь в диски, то да. Возможно, стоит пооптимизировать запросы —
может быть, вы лишний раз ездите по диску, когда этого можно было бы из-
бежать.

Неактивен

 

#5 27.05.2010 22:14:18

mc-tolyan
Участник
Зарегистрирован: 22.04.2010
Сообщений: 9

Re: Таблицы одной БД на разных винчах?

В windows server 2008 символические ссылки делать возможно. Отдельно перенести базу на другой диск - получается. А перенести отдельную таблицу- MySql ругается, что не найдена таблица, ссылки почему-то не работают...

Неактивен

 

#6 29.05.2010 19:43:27

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Таблицы одной БД на разных винчах?

К сожалению, тут я никак помочь не смогу: к windows у меня есть лишь ограниченный
доступ, а уж к 2008 нет никакого. Видимо, символические ссылки в Windows работают
как-то не так. Должно соблюдаться простое условие — редактирование файла должно
открывать именно файл с данными, а не файл со ссылкой. Если это не так (проверьте),
то, значит, ссылок в моем понимании так и не сделали sad

Неактивен

 

#7 04.06.2010 00:41:24

mc-tolyan
Участник
Зарегистрирован: 22.04.2010
Сообщений: 9

Re: Таблицы одной БД на разных винчах?

Для редактирования файл открывается, а вот MySQL таблицы, перенесённые по символическим ссылкам видеть не хочет... Возможно, я что-то делаю неверно. Опыта работы с такими ссылками не было до этого.
Пробовал просто командой: mklink ссылка имя_файла
Пришлось отдельную базу использовать. Криво, но как иначе - в голову не приходит.

Неактивен

 

#8 04.06.2010 03:01:51

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Таблицы одной БД на разных винчах?

Давайте оставим тему открытой, может быть, кто-то из держателей Windows
откликнется и расскажет в чем дело smile

Неактивен

 

#9 04.06.2010 18:53:46

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Re: Таблицы одной БД на разных винчах?

Что характерно в доке mysql варианта именно симлинков на таблицы - нет - http://dev.mysql.com/doc/refman/5.0/en/ … inks.html.

Видимо не поддерживается либо NTFS, либо из-за каких то особенностей реализации в NTFS - не поддерживается самой mysql

Отредактированно Shopen (04.06.2010 18:54:11)

Неактивен

 

#10 06.06.2010 00:11:53

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Таблицы одной БД на разных винчах?

Дока писалась тогда, когда симлинков в NTFS не было даже близко. Для переноса
баз был сделан костылик под Windows, а дальше дело не пошло, т.к. костылики
плодить не нужно. Но почему, если симлинки реализованы прозрачно для ПО, они
не заработали — не понятно.

Неактивен

 

#11 07.06.2010 21:35:41

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Re: Таблицы одной БД на разных винчах?

К сожалению проверить не могу, т.к. символические ссылки (mklink) доступны только с 2008 server, а у меня 2003. Доберусь до висты - попробую там. Но вообще странно, что не работает.

В порядке тычков в небо - а тип таблиц какой? если myisam, то файл table.frm - тоже симлинком сделан?

Неактивен

 

#12 08.06.2010 20:23:40

mc-tolyan
Участник
Зарегистрирован: 22.04.2010
Сообщений: 9

Re: Таблицы одной БД на разных винчах?

Да, MyISAM.
Да, тоже ссылкой.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson