Я новичок в вопросах баз данных, и это выглядит как глупый вопрос, но я не нашел ответа в Интернете, поэтому начну:
У меня есть файл 3Go .sql, который представляет собой дамп базы данных MariaDB. Я на винде с ограниченными правами, ничего кроме DBrowser и DBeaver (версия сообщества) не получил. Я хочу иметь возможность видеть данные в этом дампе, такие как таблицы, столбцы и фактические записи.
Что я пробовал до сих пор:
Мне удалось открыть файл в текстовом редакторе, там полно такого:
--
-- Table structure for table `XXX`
--
DROP TABLE IF EXISTS `XXX`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `XXX` (
`config` varchar(32) DEFAULT NULL,
`task_config` varchar(32) DEFAULT NULL,
`active` tinyint(1) DEFAULT NULL,
`sys_id` char(32) NOT NULL,
PRIMARY KEY (`sys_id`),
KEY `task_config` (`task_config`),
KEY `config` (`config`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `XXX`
--
set autocommit=0;
INSERT INTO `XXX` VALUES ( YYY )
commit;
Так это похоже на действительный дамп с моей точки зрения? например, он удаляет все, затем воссоздает таблицу и вставляет некоторые данные?
Итак, как я могу «открыть» эту БД? Мое последнее предположение - установить MariaDB.msi для Windows, подключиться к локальному хосту и создать пустую базу данных, чтобы затем импортировать в нее дамп и, по крайней мере, подключиться к указанной базе данных с помощью DBeaver; но, похоже, для того, чтобы правильно визуализировать дамп, нужно пройти много шагов, и, поскольку у меня ограниченные права, мне нужно будет запросить авторизацию, поэтому я хочу быть уверен, что это правильный способ сделать это, прежде чем я решусь на это.
Я мог бы просмотреть код с помощью VSCode, но это большой файл, поэтому он немного мал и иногда дает сбой; но я увидел достаточно, чтобы понять, что я не хочу видеть это таким. Мне нужно правильное отображение таблиц/столбцов/записей, как обычно в DBrowser, когда я открываю файлы .db. Похоже, я выберу сервер базы данных, спасибо.





Установите MySQL Community Server 8.0.
Установите MySQL Workbench 8.0 для создания БД.
Используйте MySQL CLI для импорта базы данных:
mysql --host = "127.0.0.1" --port=3306 --user=[User] --password [Database] < database.sql
Используйте Workbench для просмотра данных.
Если вы хотите просмотреть данные, я думаю, что Notepad++ справится с этой работой, он никогда не открывал такой огромный файл.
спасибо за ваш ответ. Быстрый вопрос: почему мне следует использовать MySQL Community Server вместо сервера MariaDB? Кто-то из них лучше? В моем файле дампа указано, что это MariaDB, поэтому я подумал, что мне действительно нужен сервер MariaDB, а не другой.
Это вопрос предпочтений, я использую MySQL уже 17 лет, MariaDB совместима с MySQL. В вашем образце дампа даже есть условные команды для MySQL.
@PércolesTiagoNapivoski Обратите внимание, что, хотя MariaDB и MySQL имеют одно и то же наследие и кодовую базу, в настоящее время это разные продукты, и между ними есть различия. См. mariadb.com/kb/en/…
Я никогда не использовал MariaDB, не могу сказать, есть ли разница, но в этом примере кода есть такие части, как условные команды из MySQL (/*!40101...), что заставляет меня полагать, что он будет совместим с MySQL. ОП действительно может предпочесть MariaDB и таким же образом импортировать БД через CLI.
Одна вещь, которая может ускорить создание базы данных и заполнение жесткого диска, — это отключение очистки буфера кэша записи. Обратите внимание, что для этого требуется надежный источник питания.
Разве это не накладные расходы на установку MySQL Workbench для создания базы данных?
Он также будет использоваться для просмотра данных, но, действительно, не нужно его устанавливать, только для создания БД, достаточно будет CLI.
Дамп представляет собой обычный текст (код SQL). Вы можете просмотреть код или загрузить дамп. Для просмотра кода вам понадобится инструмент, поддерживающий очень большие файлы. Для загрузки дампа вам понадобится сервер базы данных. Оба требования вполне разумны.