2012-03-13 3 views
2

Мне нужна отдельная база данных InnoDB, которая будет использоваться установками Linux и Windows MySQL (при загрузке моего компьютера на Linux или в Windows). Было бы здорово, если бы я мог перемещать одну и ту же базу данных на другой компьютер. Импорт/экспорт данных вряд ли является вариантом, поскольку база данных огромна (более 4 гигабайт - легко копировать, но довольно долго для экспорта/импорта). Как это можно достичь?Как создать «портативную» базу данных MySQL InnoDB?

+1

Самое простое - разместить БД на отдельном сервере и подключиться к нему по сети с помощью компьютера Linux или Windows, когда вам это нужно. Имейте в виду, что «сервер» не должен быть другим компьютером, это может быть просто виртуальная машина. –

+1

Если смена СУБД не слишком сложна, может ли SQLite быть опцией? Однако существуют некоторые проблемы с «большими» базами данных SQLite: http://stackoverflow.com/questions/784173/what-are-the-performance-characteristics-of-sqlite-with-very-large-database-file Проверить как well http://www.sqlite.org/whentouse.html –

+0

Расширение ответа Jame, если у вас нет лишнего сервера, который можно повесить, вы можете поместить виртуальную машину на отдельный раздел, чтобы вы могли запускать виртуальную машину из Linux или Windows. Вам просто нужно выяснить, как монтировать отдельный раздел в обеих операционных системах. – GreyBeardedGeek

ответ

1

Затем вы должны установить базу данных MySQL на разделе окна, и получить путь к папке базы данных

В Linux, MySQL сохраняет свои данные в «/ Var/Библиотека/MySQL /», так туда и создать символическая ссылка на папку в разделе окна с помощью следующей команды

ln -s /path/to/database/on/windows/ /var/lib/mysql/databasename 

вы должны быть корнем, чтобы запустить эту команду, или использовать Sudo.

Это заставит сервер MySQL на обеих операционных системах увидеть одну и ту же папку базы данных.

ПРИМЕЧАНИЕ: вы должны провести некоторое тестирование, чтобы проверить, является ли это надежным решением, и если вы выполняете критически важный проект, вы должны следовать более надежной настройке.

+1

+1. Это должно сработать. Обратите внимание, что NTFS не чувствительна к регистру, но ext is. Это означает, что 'SELECT * FROM tABeL' будет работать в Windows, но может не работать в Linux. – kba

+0

Я забыл упомянуть проблему нечувствительности к случаю, спасибо за указание на то, что –

Смежные вопросы