Linux перенос базы данных

Перенос баз данных и структурированных данных в SQL Server на Linux

Применимо к: SQL Server (все поддерживаемые версии) — Linux

Вы можете перенести базы данных и данные на сервер SQL Server, работающий в Linux. Выбор способа переноса зависит от исходных данных и ваших условий. В следующих разделах приводятся рекомендации по различным сценариям переноса.

Перенос из SQL Server в Windows

Если нужно перенести базы данных с сервера SQL Server в Windows на сервер SQL Server на Linux, рекомендуется использовать резервное копирование и восстановление SQL Server.

  1. Создайте резервную копию базы данных на компьютере Windows.
  2. Перенесите файл резервной копии на конечный компьютер SQL Server на Linux.
  3. Восстановите резервную копию на компьютере Linux.

Руководство по переносу базы данных с помощью резервного копирования и восстановления см. в следующей статье:

Кроме того, можно экспортировать базу данных в файл BACPAC (сжатый файл, содержащий схему базы данных и данные). Если у вас есть файл BACPAC, его можно передать на компьютер Linux, а затем импортировать в SQL Server. Дополнительные сведения см. в следующих разделах:

Перенос с других серверов баз данных

В SQL Server на Linux можно переносить базы данных из других систем баз данных. К ним относятся Microsoft Access, DB2, MySQL, Oracle и Sybase. В этом случае используйте Помощник по миграции SQL Server (SSMA) для автоматизации переноса. Дополнительные сведения см. в статье Перенос баз данных в SQL Server на Linux с помощью SSMA.

Перенос структурированных данных

Существуют также способы импорта необработанных данных. У вас могут быть файлы со структурированными данными, экспортированные из других баз данных или источников данных. В этом случае вы можете выполнить массовую вставку данных с помощью программы bcp. Кроме того, вы можете запустить службы SQL Server Integration Services в Windows, чтобы импортировать данные в базу данных SQL Server на Linux. Службы SQL Server Integration Services позволяют выполнять более сложные преобразования данных во время импорта.

Дополнительные сведения об этих способах см. в следующих статьях:

Источник

Перемещение базы данных postgresql в Ubuntu 18.04 LTS

При установке на Ubuntu zabbix-server база данных по умолчанию пишется в папку /var/lib/postgresql. Со временем база растёт и поднимается вопрос переноса её на другой раздел диска. Перенесём базу данных в /opt/postgresql.

Требования

  • ОС Ubuntu 18.04 LTS. Или Ubuntu 16.04.
  • Работаем из-под root.
  • Сервер PostgreSQL
  • Сервер zabbix. Не обязательно.

Подготовка

Проверим где находится текущая БД postgresql.

БД находится в папке /var/lib/postgresql/9.5/main.

Для переноса БД нам понадобится rsync:

Убедимся что существует директория /opt.

Остановка сервисов

Проверка статуса postgresql.

Ищем строку «Stopped PostgreSQL RDBMS.»

Перенос файлов базы данных

После переноса переименуем старую папку, на всякий случай:

Настройка конфигурации postgresql

Правим файл postgresql.conf:

Изменяем значение data_directory:

Запуск сервисов

Проверяем где находится текущая БД postgresql.

БД находится в папке /opt/postgresql/9.5/main.

Источник

Перенос всего mysql на новый сервер

У меня дома стоит небольшой сервер, где у друга крутятся его сайтики, который используют mysql. Сейчас я обновил там ОС и все снес (точнее сделал это на другом винте, исходный винт жив). Теперь хочу перенести его сайтики самым простым способом. Возникает вопрос о переносе баз mysql. Можно ли перенести сразу все (настройки, базы, пользователей), положить на новой машине и запустить там mysql? Был ubuntu 10.4, теперь ubuntu 13.4. Какие директории надо переносить? Ни когда не имел дело с mysql, больше с postgres

Читайте также:  Linux read process memory

даммпит все, включая настройки пользователей?

Ну это уже в зависимости от желаний, да? Можно сдампить отдельно, можно —all-databases

а как потом востановить? я просто хочу перетащить вообще все тупа, не разбираяс в содержании

формат может между версиями поменять и ппц.

mysqldump —all-databases -uUser -pPass > dumpfile.sql

mysql -uUser -pPass ★★★★★ ( 25.08.13 21:13:15 )

Сохраняйте свои пароли в истории шелла, сохраняйте.

тут не до секрюрности. Мне надо тупо перенсти.

я не думую, что так кардинально поменяется. Но все ли там, что надо?

—routines можно добавить к опциям mysqldump

Просто не переноси sql файлами.

формат может между версиями поменять и ппц.

Может. Но происходит это не очень часто, на самом деле. Можно и попробовать скопировать. Кроме того, именно это же и происходит просто при обновлении MySQL. Когда последний раз проблемы возникали ? Я вот не помню. Кроме того, есть mysql_upgrade, который следует запустить после операции такого рода.

если имеется phpmyadmin, то в нем можно все базы сбекапить в файлы себе на рабочую тачку, используя лишь для этого браузер. Отключить Ubuntu 10.04 Подключить Ub 13.4 И на 13.4 так же через phpmyadmin залить базы. Я например так делал при переезде.

если имеется phpmyadmin, то в нем можно все базы сбекапить в файлы себе на рабочую тачку, используя лишь для этого браузер. Отключить Ubuntu 10.04 Подключить Ub 13.4 И на 13.4 так же через phpmyadmin залить базы. Я например так делал при переезде.

Нахрена такой оверхед на элементарную операцию ?

Я например так делал при переезде.

я боюсь представить что ты будешь с электронным микроскопом делать.

если версии mysql совпадают и юзается MyISAM, то можно и /var/lib/mysql затарить.

Как переносил я: на старом сервере был мускул 5.1, на новом — mariaDB 5.5. Использовал утилиту xtrabackup/innobackupex. Можно временно добавить репозиторий, только её установить. То, что выбрал xtrabackup — не пожалел, базы скопировал и InnoDB, и MyISAM, быстрее mysqldump’a точно.

важный момент — в параметре —password указываешь пароль рута от мускула. Если боишься за историю, то используй давний трюк — стрелками доходишь до команды, вместо пароля пишешь «хренТебе», и обратно опускаешься до конца. Тогда в истории сохранится заданный пароль

даммпит все, включая настройки пользователей?

у меня всё сохранил, даже после mysql_upgrade

тут не до секрюрности. Мне надо тупо перенсти.

я тоже так хотел, и получил 🙂

Для ТС операция не элементарна выходит, раз он тему завёл. ТС надо перенести все базы грубо говоря с одной тачки на другую. (с винта на винт) И судя по вопросу, он не столь опытен, для него легче будет как новичку именно решить проблему двумя кликами. Согласен, если нет phpmyadmin то можно сделать и по другому как описывают другие участники. Но если БЛ*** имеется пыхыпыадмин, то нафига мучаться с монтированием дисков одной тачки к другой чтоб перетащить файл, или лазить по sftp. Проще все сделать в два клика сидя в браузере. а не задротить в консоли. ИМХО!

Читайте также:  Что делать при ошибки windows boot manager

/me переносит только базы.

его ставить надо, а я этого не хочу.

Я опытен в линуксе, просто мускул для меня темный лес и другая сторона силы. Была бы постгря

Базы можно тупо скопировать. Даже между разными платформами. Я например так переносил с венды на линукс. У них и в документации это подчёркивается. Главное сервер корректно погасить.

Под копированием я имел в виду каталог с данными.

Источник

Перенос базы данных MySQL на другой сервер

Какие способы бывают?

1 – при помощи интерфейса phpMyAdmin.

2 – при помощи панели управления хостинг-провайдера.

3 – при помощи сторонней программы.

Какой способ лучше?

Мы рекомендуем первый, т.к. его схема проста, и используется большинством вебмастеров. Третий способ мы не рекомендуем использовать! Никогда не доверяйте содержимое своего сайта сторонним программам, к тому же от непонятных разработчиков. Еще можно использовать второй способ, но его алгоритм очень разнится, и зависит от панели управления хостера. Поэтому, мы детально рассмотрим первый вариант, и расскажем как грамотно перенести базы данных MySQL, без потери и повреждения данных.

Создаем базу данных на новом хостинге

Если Вы хотите перенести базу данных MySQL, значит у Вас уже есть БД, и Вы умете ее создавать. В любом случае этот процесс разный для каждого из хостинг-провайдеров, но сводится к одному общему алгоритму:

1 – Ищем раздел “MySQL”, “Базы данных” или что-то похожее.

2 – В нем нажимаем “Создать”.

3 – Вписываем название базы данных, прикрепляем к ней пользователя (обычно пользователь БД уже создан, если нет, то создайте его и установите самые большие права) и вводим пароль для БД.

4 – База данных создана, но она пока что пустая.

Экспортируем БД со старого хостинга

Сейчас мы воспользуемся тем, что называют дамп базы данных. Т.е. сохраним текущую БД с сервера, к себе на компьютер. Для этого нам понадобится интерфейс phpMyAdmin, который нужно отыскать в личном кабинете хостинг-провайдера, у которого находится Ваш текущий сайт. Опять же единого алгоритма нет, поэтому приводим общую схему:

1 – Найдите ссылку на phpMyAdmin в разделе “MySQL” или “Базы данных”.

2 – Слева в углу выберите свою базу данных (ту, которую вы собираетесь экспортировать на компьютер, чтобы потом перенести на другой хостинг).

3 – Жмем вкладку “Экспорт”.

Дальше все будет зависеть от версии phpMyAdmin, но в любом случае Вам нужно сделать следующее:

4 – Возможно Вас попросят выбрать способ экспорта “Обычный” (много настроек) или “Быстрый” (мало настроек). Не имеет значения какой выбирать, главное изменить только те настройки, которые мы описываем ниже.

5 – Нужно выбрать все таблицы, нажав на кнопку “Выделить все”.

6 – Отметить галочкой “Сохранить как файл”, “Сохранить вывод в файл” или что-то подобное.

7 – На всякий случай, запоминаем кодировку, но не трогаем ее.

8 – Жмем “Ок” и сохраняем файл с БД себе на компьютер. Обычно сохраняемый файл имеет расширение .sql.

Импорт БД на сервер нового хостера

1 – Таким же образом ищем phpMyAdmin на новом хостинге.

2 – В нем выбираем нужную базу данных (мы ее создавали в начале статьи, и она осталась пустой).

3 – Жмем на вкладку “Импорт”.

4 – Нажимаем “Обзор” и выбираем сохраненную на компьютере базу данных.

Читайте также:  Keyshot для mac os

5 – Проверьте, чтобы кодировка совпадала с той, в которой Вы сохраняли БД.

6 – Больше ничего не меняете, жмете “Ок” и Ваша база данных импортируется на новый хостинг.

Какие бывают проблемы?

1 – При импорте БД в ней не должно быть запросов типа «CREATE DATABASE, /*!40101 SET @OLD». Чтобы проверить их наличие – откройте файл БД на своем компьютере любым текстовым редактором (лучше всего подходит Notepad++) и через Ctrl+А поищите эти запросы. Если найдете, то просто удалите их, и попробуйте снова импортировать БД.

2 – При импорте, база данных, которая находится у нового хостера должна быть пустой, если в ней уже существуют какие-либо таблицы – выделите и удалите их.

Источник

Импорт и экспорт баз данных MySQL и MariaDB

При работе с данными очень важно уметь импортировать и экспортировать базы данных. Дампы данных можно использовать для резервного копирования и восстановления БД, что позволяет в случае необходимости получить доступ к одной из предыдущих версий данных или переместить их на новый сервер или среду разработки.

Дампы MySQL и MariaDB очень просты в работе. Это руководство научит вас экспортировать и импортировать базы данных с помощью дампа MySQL или MariaDB.

Требования

  • Сервер Linux.
  • Предварительно установленная система управления базами данных MySQL или MariaDB.
  • База данных и пользователь СУБД.

Экспорт данных

Консольная утилита mysqldump позволяет экспортировать данные в текстовый файл SQL, который можно легко переместить. Для этого вам понадобится имя БД, а также учётные данные пользователя, у которого есть как минимум право на чтение БД.

Чтобы экспортировать БД, используйте такую команду:

mysqldump -u username -p database_name > data-dump.sql

  • username – имя пользователя БД;
  • database_name – имя БД, которую нужно экспортировать;
  • data-dump.sql – файл в текущем каталоге, в который будут экспортированы данные.

Вывод этой команды не отображается на экране. Чтобы убедиться в том, что данные были импортированы успешно, проверьте содержимое дампа:

head -n 5 data-dump.sql

Файл дампа MySQL должен начинаться примерно так:

— MySQL dump 10.13 Distrib 5.7.16, for Linux (x86_64)

— Host: localhost Database: database_name
— ——————————————————
— Server version 5.7.16-0ubuntu0.16.04.1

Если во время экспорта данных произошла ошибка, утилита mysqldump сообщит вам о ней.

Импорт данных

Чтобы импортировать дамп, нужно создать новую БД MySQL или MariaDB, в которую будут перемещены данные из дампа.

Войдите как root или другой пользователь с расширенными привилегиями.

Эта команда откроет командную оболочку MySQL. Создайте новую БД, например, new_database.

CREATE DATABASE new_database;

На экране появится вывод, подтверждающий, что БД была создана:

Query OK, 1 row affected (0.00 sec)

Закройте оболочку MySQL (CTRL+D). С помощью обычной командной строки импортируйте дамп:

mysql -u username -p new_database

  • username – имя пользователя, у которого есть доступ к БД.
  • newdatabase – имя новой БД.
  • data-dump.sql – имя дампа, который нужно импортировать.

В случае успешного выполнения команды вывод не отображается на экране. Если во время выполнения возникла какая-либо ошибка, mysql выведет их в терминал. Чтобы убедиться, что данные импортированы успешно, войдите в оболочку MySQL и проверьте БД. Для этого можно использовать:

USE new_database;
SHOW TABLES;

Заключение

Теперь вы умеете перемещать данные MySQL и MariaDB с помощью дампа. Утилита mysqldump имеет множество дополнительных параметров, при помощи которых можно настраивать дампы; подробнее об этом – в официальной документации mysqldump.

Источник

Оцените статью