|
|
|
| Как нужно подключать базу данных, если она была создана на другом компьютере. Просто помещение в data не работает - пишет, что неправильный *.frm. Что можно сделать? | |
|
|
|
|
|
|
|
для: Nik777
(26.01.2006 в 23:38)
| | Довольно легко и наглядно при помощи phpMyAdmin. Там есть кнопочка "Экспорт", дальше меню - разберетесь. Создается в итоге файл с дампом БД, и уже его переносите на другую машину; там надо просто обработать в цикле с помощью mysql_query() (это если переносите только структуру; с данными сложнее).
В принципе, можете и сами написать аналогичный скрипт, это не очень сложно. | |
|
|
|
|
|
|
|
для: Киналь
(26.01.2006 в 23:47)
| | Большое спасибо, а как же поступать с данными? | |
|
|
|
|
|
|
|
для: Nik777
(26.01.2006 в 23:50)
| | Проблема там вот в чем. Функция mysql_query() принимает только один запрос к БД, поэтому файл с дампом нужно сначала считать в массив, разделив по символу ";". Естественно, если где-то в данных содержится точка с запятой, все насмарку.
Я не так давно задавал здесь подобный вопрос, правда, только для структуры; по поводу же данных рекомендовали формировать дамп вручную, вставляя искусственные разделители.
С другой стороны: если этот файл загнать в phpMyAdmin, то он нормально обработается, несмотря на любые ";". Так что нет ничего невозможного=) | |
|
|
|
|
|
|
|
для: Nik777
(26.01.2006 в 23:50)
| | Если вам доступна директория mysql/bin, полученный дамп можно импортировать в базу данных при помощи команды
mysqldump -u root base < base.sql
|
где root - имя пользователя, base - имя базы данных - куда будут помещены таблицы (она должна существовать), а base.sql - имя дампа, созданного ранее при помощи phpMyAdmin. | |
|
|
|