Автор Тема: Дамп Mysql базы  (Прочитано 4897 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн dan3k

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 14
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Дамп Mysql базы
« : 05 Ноября 2003, 08:17:01 »
Требуется сделать дамп определенных таблиц (бд - MySql).

Очень хочется, чтобы все было в таком формате:

CREATE TABLE ex_bl (
  bl_id mediumint(9) NOT NULL auto_increment,
  ip_address varchar(16) NOT NULL default \'\',
  p_id mediumint(9) NOT NULL default \'0\',
  KEY bl_id (bl_id)
) TYPE=MyISAM;

INSERT INTO ex_bl VALUES (1, \'127.0.0.1\', 0);
INSERT INTO ex_bl VALUES (2, \'127.0.0.1\', 0);

#next table...

Т.е. как в phpmyadmin.

Может быть в MySql есть спец-функция? Тогда топик надо будет перенести в другой форум :).

Или же прийдется делать полный select таблицы, а потом через цикл писать все значения как
INSERT INTO $tablename VALUES ($a->{\'1\'}, \'$a->{\'2\'}\', $a->{\'3\'})?

И тут еще назрел вопрос: как это сделать при большой базе, чтобы заодно сервак не упал :D?

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Дамп Mysql базы
« Ответ #1 : 05 Ноября 2003, 09:11:01 »
man mysqldump
2B OR NOT 2B = FF

Оффлайн dan3k

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 14
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Дамп Mysql базы
« Ответ #2 : 05 Ноября 2003, 12:52:45 »
И как mysqldump запустить с помощью DBI?

Оффлайн amigo

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.livejournal.com/users/amigo_otaku
Дамп Mysql базы
« Ответ #3 : 05 Ноября 2003, 13:37:36 »
dan3k не помню, чтобы была определенная функция, но можно выцепить информацию о таблице с помощью SQL-запроса:
SHOW COLUMNS FROM table_name [FROM database_name]
или SHOW FIELDS...

На основе результатов можно сформировать CREATE TABLE...

Как сгенерировать INSERT... я думаю понятно ^_^
WBR, AMiGo.

Оффлайн amigo

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.livejournal.com/users/amigo_otaku
Дамп Mysql базы
« Ответ #4 : 05 Ноября 2003, 13:42:25 »
dan3k хотя можно запсукать mysqldump, а вывод ловить скриптом...
WBR, AMiGo.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Дамп Mysql базы
« Ответ #5 : 05 Ноября 2003, 14:09:47 »
Цитировать
И как mysqldump запустить с помощью DBI?

Отвечаю четко на вопрос: никак.
2B OR NOT 2B = FF

Оффлайн fidget

  • Непоседа
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 607
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Дамп Mysql базы
« Ответ #6 : 05 Ноября 2003, 14:37:19 »
Цитировать
amigo:
SHOW COLUMNS FROM table_name [FROM database_name]
или SHOW FIELDS...

На основе результатов можно сформировать CREATE TABLE...


ну если уже CREATE TABLE нужно, то тогда сразу SHOW CREATE TABLE и использовать.
На Машине Тьюринга далеко не уедешь.

Оффлайн amigo

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.livejournal.com/users/amigo_otaku
Дамп Mysql базы
« Ответ #7 : 05 Ноября 2003, 14:55:38 »
fidget да. Просто торможу.
WBR, AMiGo.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28