- Перенос баз данных и структурированных данных в SQL Server на Linux
- Перенос из SQL Server в Windows
- Перенос с других серверов баз данных
- Перенос структурированных данных
- Перемещение базы данных postgresql в Ubuntu 18.04 LTS
- Требования
- Подготовка
- Остановка сервисов
- Перенос файлов базы данных
- Настройка конфигурации postgresql
- Запуск сервисов
- Перенос всего mysql на новый сервер
- Перенос базы данных MySQL на другой сервер
- Импорт и экспорт баз данных MySQL и MariaDB
- Требования
- Экспорт данных
- Импорт данных
- Заключение
Перенос баз данных и структурированных данных в SQL Server на Linux
Применимо к: SQL Server (все поддерживаемые версии) — Linux
Вы можете перенести базы данных и данные на сервер SQL Server, работающий в Linux. Выбор способа переноса зависит от исходных данных и ваших условий. В следующих разделах приводятся рекомендации по различным сценариям переноса.
Перенос из SQL Server в Windows
Если нужно перенести базы данных с сервера SQL Server в Windows на сервер SQL Server на Linux, рекомендуется использовать резервное копирование и восстановление SQL Server.
- Создайте резервную копию базы данных на компьютере Windows.
- Перенесите файл резервной копии на конечный компьютер SQL Server на Linux.
- Восстановите резервную копию на компьютере 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
даммпит все, включая настройки пользователей?
Ну это уже в зависимости от желаний, да? Можно сдампить отдельно, можно —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. Проще все сделать в два клика сидя в браузере. а не задротить в консоли. ИМХО!
/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 – Нажимаем “Обзор” и выбираем сохраненную на компьютере базу данных.
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.
Источник