Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: Astor в Feb 02, 2010, 15:42



Титла: mysql възстановяване на база данни?
Публикувано от: Astor в Feb 02, 2010, 15:42
Здравейте,
Извинявам се предварително за тези въпроси, но не съм се сблъсквал до сега с mysql и съм много бос в тази област.
Налага ми се да обслужвам една база данни която се оправлява от друг софтуер.
Трябва да мога архивирам дадена база данни...това става с mysqldump,
а с mysql < file.db се възстановява архивираната базата данни.
Имам следните въпроси:
от къде се задава до каква големина (пространство заемано на хард диска) може да расте базата данни? /etc/my.cnf? И какво става след като се запълни заделеното място?
Има ли начин да се накара mysql да изтрива/архивира автоматично най-старите записи (определени таблици съдържащи логове на събитията) от базата данни с цел да не се запълни заделеното пространство на диска? Най-вероятно това трябва да го прави самия софтуер управляващ базата данни...но не намирам такава настройка в него :(


Титла: Re: mysql възстановяване на база данни?
Публикувано от: anstas в Feb 02, 2010, 17:36
Здравей!

Всичко е в зависимост от големината на базата данни!
Удобният начин е ако имаш инсталиран, phpmyadmin?
Разгледай това...

http://www.ntchosting.com/mysql/database-dump.html#How_to_create_a_MySQL_table_using_the_PHPMyAdmin

С пожелания за успешно решение!


Титла: Re: mysql възстановяване на база данни?
Публикувано от: Astor в Feb 03, 2010, 15:42
Така и не разбрах от къде се задава крайното дисково пространство до което може да расте дадена база данни?
И какво става когато няма повече дисково пространство за да расте базата данни?


Титла: Re: mysql възстановяване на база данни?
Публикувано от: zeridon в Feb 03, 2010, 17:24
При myisam енджина (който е по подразбиране) няма такава настройка.

Ако се използва InnoDB енджина лимита се настройва от my.cnf като се дадат настройки за големината на файла в който трупа.


Титла: Re: mysql възстановяване на база данни?
Публикувано от: dejuren в Feb 04, 2010, 22:45
Като няма повече място базата се чупи при update или insert. За автоматично изтриване си правих perl скрипт в крон, който избираше записи с поле дата по малко от зададено (два месеца от текущата дата), но твоят случай изглежда по-лесен, тъй като имаш цели таблици разделени по време. Дано само програмиста на базатa се е сетил да включи датата на създаване на таблицата в името и. Като друго решение може да се преместят файловете на базите (при спрян сървър) в директория с празно място, и сървъра се презапусне с новата директория в my.cnf, или просто се направи линк оt /var/lib/mysql до новото място.