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

Форум MySQL

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

 

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

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

тема: Перемещение базы с одного компа на другой
 
 автор: Nik777   (26.01.2006 в 23:38)   письмо автору
 
 

Как нужно подключать базу данных, если она была создана на другом компьютере. Просто помещение в data не работает - пишет, что неправильный *.frm. Что можно сделать?

   
 
 автор: Киналь   (26.01.2006 в 23:47)   письмо автору
 
   для: Nik777   (26.01.2006 в 23:38)
 

Довольно легко и наглядно при помощи phpMyAdmin. Там есть кнопочка "Экспорт", дальше меню - разберетесь. Создается в итоге файл с дампом БД, и уже его переносите на другую машину; там надо просто обработать в цикле с помощью mysql_query() (это если переносите только структуру; с данными сложнее).

В принципе, можете и сами написать аналогичный скрипт, это не очень сложно.

   
 
 автор: Nik777   (26.01.2006 в 23:50)   письмо автору
 
   для: Киналь   (26.01.2006 в 23:47)
 

Большое спасибо, а как же поступать с данными?

   
 
 автор: Киналь   (27.01.2006 в 00:00)   письмо автору
 
   для: Nik777   (26.01.2006 в 23:50)
 

Проблема там вот в чем. Функция mysql_query() принимает только один запрос к БД, поэтому файл с дампом нужно сначала считать в массив, разделив по символу ";". Естественно, если где-то в данных содержится точка с запятой, все насмарку.
Я не так давно задавал здесь подобный вопрос, правда, только для структуры; по поводу же данных рекомендовали формировать дамп вручную, вставляя искусственные разделители.
С другой стороны: если этот файл загнать в phpMyAdmin, то он нормально обработается, несмотря на любые ";". Так что нет ничего невозможного=)

   
 
 автор: cheops   (27.01.2006 в 13:21)   письмо автору
 
   для: Nik777   (26.01.2006 в 23:50)
 

Если вам доступна директория mysql/bin, полученный дамп можно импортировать в базу данных при помощи команды
mysqldump -u root base < base.sql

где root - имя пользователя, base - имя базы данных - куда будут помещены таблицы (она должна существовать), а base.sql - имя дампа, созданного ранее при помощи phpMyAdmin.

   
Rambler's Top100
вверх

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