Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: резервное копирование
 
 автор: kyzma   (07.12.2007 в 21:19)   письмо автору
 
 

как сделать и резервную копию таблицы InnoDB и затем восстановить?

   
 
 автор: Faraon   (07.12.2007 в 21:36)   письмо автору
 
   для: kyzma   (07.12.2007 в 21:19)
 

Какие средства администрирования доступны ?
Или вы хотите постоянный Backup ?

   
 
 автор: Mookapek   (07.12.2007 в 21:53)   письмо автору
 
   для: kyzma   (07.12.2007 в 21:19)
 

так дамп можно сделать

   
 
 автор: kyzma   (08.12.2007 в 00:16)   письмо автору
 
   для: Mookapek   (07.12.2007 в 21:53)
 

на время выполнения дампа нужно делать блокировку?как это будет отличаться для таблиц типа MyISAM и InnoDB?

   
 
 автор: cheops   (08.12.2007 в 11:53)   письмо автору
 
   для: kyzma   (07.12.2007 в 21:19)
 

Ничем не отличается, блокируйте таблицы при помощи оператора
FLUSH TABLES WITH READ LOCK;

Во время создания дампа - соединения клиента, который выполнил запрос должно оставаться открытым, как только соединение будет закрыто - блокировка снимается. Снять блокировку можно также при поомщи оператора
UNLOCK TABLES;

   
 
 автор: kyzma   (09.12.2007 в 00:49)   письмо автору
 
   для: cheops   (08.12.2007 в 11:53)
 

а можно прямо из приложения запустить скрипт, который сделает дамп базы..если да, то как?

   
 
 автор: Faraon   (09.12.2007 в 01:26)   письмо автору
 
   для: kyzma   (09.12.2007 в 00:49)
 

Какого приложения?

   
 
 автор: kyzma   (09.12.2007 в 02:27)   письмо автору
 
   для: Faraon   (09.12.2007 в 01:26)
 

пардон..Web-приложения

   
 
 автор: Faraon   (09.12.2007 в 02:37)   письмо автору
 
   для: kyzma   (09.12.2007 в 02:27)
 

Это PhpMyAdmin ?

   
 
 автор: cheops   (09.12.2007 в 11:27)   письмо автору
 
   для: kyzma   (09.12.2007 в 00:49)
 

Если вы планируете запускать из Web-приложения, эти операторы и резервное копирование должны выполняться в рамках одного скрипта - в отдельных скриптах выполнять эти операции бесполезно - соединение будет закрыто и заблокировать таблицы так не получится.

   
 
 автор: kyzma   (09.12.2007 в 17:38)   письмо автору
 
   для: cheops   (09.12.2007 в 11:27)
 

это не PhpMyAdmin...это сайт, в котором будет что то на подопии панели администратора базы данных, с которым работает это приложение и от туда нужно делать резервное копирование этой базы, но думаю дамп подойдёт. как запустить mysqldump из Web-приложения???

   
 
 автор: cheops   (10.12.2007 в 11:23)   письмо автору
 
   для: kyzma   (09.12.2007 в 17:38)
 

Если у вас разрешено выполнение системных команд в PHP, достаточно поместить команду в обратные кавычки
`mysqldump ...`;

   
 
 автор: kyzma   (10.12.2007 в 23:41)   письмо автору
 
   для: cheops   (10.12.2007 в 11:23)
 

какая директива разрешает выполнение системных команд в PHP?

   
 
 автор: cheops   (10.12.2007 в 23:56)   письмо автору
 
   для: kyzma   (10.12.2007 в 23:41)
 

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

   
 
 автор: kyzma   (11.12.2007 в 00:25)   письмо автору
 
   для: cheops   (10.12.2007 в 23:56)
 

эта директива у меня пустая. написал скрипт

<?php
`mysqldump -u root base > base.sql`;
?>

в директории, где находится этот скрипт создался файл base.sql, но он пустой!!!в чём проблема?

   
 
 автор: cheops   (11.12.2007 в 00:41)   письмо автору
 
   для: kyzma   (11.12.2007 в 00:25)
 

А скрипт видит утилиту mysqldump? Может лучше использовать полный путь к директиве?

   
 
 автор: kyzma   (11.12.2007 в 00:49)   письмо автору
 
   для: cheops   (11.12.2007 в 00:41)
 

С полным путём тоже пробовал

<?php
`C:\mysql5\bin mysqldump -u root base > base.sql`;
?>

результат тот же

   
 
 автор: Trianon   (11.12.2007 в 00:53)   письмо автору
 
   для: kyzma   (11.12.2007 в 00:49)
 

а почему между bin и mysqldump пробел вместо \ ?

   
 
 автор: cheops   (11.12.2007 в 00:55)   письмо автору
 
   для: kyzma   (11.12.2007 в 00:49)
 

Кроме, пробела замените обратный слеш \ на прямой /, чтобы исключить возможные проблемы с экранированием.

   
 
 автор: kyzma   (11.12.2007 в 01:02)   письмо автору
 
   для: cheops   (11.12.2007 в 00:55)
 

спасибо большое..заработало))а можно ли как нибудь сжать этот файл из скрипта?

   
 
 автор: Trianon   (11.12.2007 в 01:26)   письмо автору
 
   для: kyzma   (11.12.2007 в 01:02)
 

mysqldump .... | gzip -f filename

   
 
 автор: kyzma   (11.12.2007 в 01:33)   письмо автору
 
   для: Trianon   (11.12.2007 в 01:26)
 

поясните, пожалуйста, как использовать эту команду

   
 
 автор: kyzma   (11.12.2007 в 11:49)   письмо автору
 
   для: kyzma   (11.12.2007 в 01:33)
 

написал скрипт

<?php
    
`C:/mysql5/bin/mysqldump -u root base > base.sql`;
    `
gzip -f C:/Sites/mysite/www/base.sql`;
?>

но файл дампа не сжимается

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования