Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM Хостинг
Содержание
  1. # before doing anything
  2. # centos
  3. # centos and mysql 5.6
  4. # connect to your mysql database from a remote connection
  5. # converting from mysql 5.5 to mariadb 5.5
  6. # debian/freebsd
  7. # debian: downgrading from mysql 5.6 to 5.5
  8. # forcing mysql_upgrade after a version change
  9. # global limits
  10. # how to optimize mysql
  11. # how to repair mysql tables
  12. # how to upgrade mysql / mariadb with custombuild 2.0
  13. # i have many mysql-bin files which are using up a lot of space
  14. # local-infile=0 in your /etc/my.cnf
  15. # mysql 5.5 > mariadb 5.5 > mariadb 10.0 > mariadb 10.1 > mariadb 10.2 > mariadb 10.3
  16. # new method
  17. # setting up da to use a remote mysql server
  18. # wait for the backup to complete, then rename it to a unique folder so it’s not overwritten:
  19. # where is my my.cnf?
  20. Centos
  21. Enterprise database pricing for mariadb | mariadb
  22. Open source database (rdbms) for the enterprise | mariadb
  23. Ubuntu
  24. Выбор типа сервера при создании новой базы данных
  25. Изменение баз данных в mysql и mariadb
  26. Изменение существующего сервера базы данных
  27. Настраиваем брандмауэр.
  28. Настройка
  29. Настройка защищенного (secure) ftp.
  30. Переходим к настройке сервера.
  31. Правка конфигурационного файла joomla
  32. Правка конфигурационного файла opencart
  33. Правка конфигурационного файла wordpress
  34. Проверка подключения к субд
  35. Проверка состояния сервера
  36. Просмотр баз данных mysql и mariadb
  37. Создадим самоподписанный сертификат.
  38. Создание базы данных в mysql и mariadb
  39. Удаление баз данных mysql и mariadb
  40. Установим веб-сервер iis
  41. Итоги

# before doing anything

We recommend you make full DA backups for easy restore, and CustomBuild mysql backups, just in case.

# centos

There is a default my.cnf that comes with MySQL (4 5) that will make MySQL run a bit quicker if you have 2 gig of ram

There is also my-huge.cnf, or my-medium.cnf depending on your hardware setup. Check the contents of these my*.cnf files for the one that’s right for you.

NOTE 1 the log-bin option is enabled by default. This will quickly use a lot of disk space. It’s recommended to comment out the log-bin line from your /etc/my.cnf, if it exists.

NOTE 2 Take note of your old /etc/my.cnf file. If you have innodb_file_per_table=1, make sure the new my.cnf you install also has this setting. Similarly, if your old one does not have innodb_file_per_table=1 enabled, then your new my.cnf should also not have it enabled.

Be sure to make full backups of your .sql files before doing any changes to your my.cnf.

# centos and mysql 5.6

New MySQL installs might not have any included my-*.cnf files.

We’ve added a few from MySQL 5.5 which seem to work with 5.6, e.g.,

Restart mysqld:

Redhat:

FreeBSD:

# connect to your mysql database from a remote connection

If you have a MySQL database with your hosting account and need to connect to it from your home computer, or another web server, you’ll need to add a remote «Access Host» to your database to allow the connection in.

Go to:

# converting from mysql 5.5 to mariadb 5.5

If you’re running MySQL 5.5 and wish to convert to MariaDB 5.5 (which then allows a higher MariaDB later on), then you can do the following:

# debian/freebsd

We don’t currently have optimized my.cnf files for these OSs. The /etc/my.cnf will rely on the internal defaults in the mysqld binaries.

# debian: downgrading from mysql 5.6 to 5.5

MySQL will have more luck in upgrading to newer versions rather than downgrading, as older versions don’t always support the newer file formats. As such, tasks such as downgrading from 5.6 to 5.5 can be a tricky task.

# forcing mysql_upgrade after a version change

When MySQL/MariaDB is updated in CustomBuild, it should automatically call the mysql_upgrade command. Sometimes, you might be working with things manually, or just want try force another upgrade call.

To do this, run:

where the —force option is optional, but sometimes needed if the script thinks it’s already up to date, but you’re not convinced it is.

Note, on Debian/FreeBSD systems, the binary is at:

# global limits

Simply edit the /etc/my.cnf with the desired limits and restart MySQL.

# how to optimize mysql

IMPORTANT

  1. Always make full backups of all of your databases before making any changes to your my.cnf.

  2. Avoid changes to your InnoDB settings unless you are very familiar with making those changes. Many of the InnoDB settings must remain the same else data corruption will occur with your InnoDB tables. We do not recommend making any changes to your InnoDB settings, unless you do so before creating your databases.

  3. Optimizing MySQL is not that easy, it may require more tryouts from you and adjustments based on queries type, amount of memory on a server etc. etc.

# how to repair mysql tables

If your system has crashed or MySQL tables have been corrupted somehow, there are few methods you can use to try and restore your database tables.

Note: MariaDB since version 5.1 uses myisam_recover_options that does auto-repair of crashed databases.

For FreeBSD or Debian, please replace all instances of /var/lib, with /home.

E.g., /var/lib/mysql becomes /home/mysql .

# how to upgrade mysql / mariadb with custombuild 2.0

To upgrade mysql using the CustomBuild script, adjust the following commands to the desired database type and version:

Where MySQL can be 5.1, 5.5, 5.6, 5.7 or 8.0 .

Where MariaDB can be 5.5, 10.0, 10.1, 10.2, 10.3, or 10.4 .

Drop-in replacement and upgrade path is following:

MySQL versionMariaDB version
5.55.5
5.610.0
5.710.2
8.0None

Upgrading MariaDB package should be done per versions so mysql_upgrade can perform necessary tasks, example upgrade path from MySQL 5.5 to MariaDB 10.3 :

# i have many mysql-bin files which are using up a lot of space

If your MySQL data directory has many files such as:

that means that the [mysqld] option:

is enabled in your /etc/my.cnf.

The solution to prevent those files from being created is to comment out the log-bin option from the my.cnf by adding at # character at the start of the line (left side).

The internal default is «OFF», hence removing it will disable it.

You can delete your mysql-bin.0* files after mysqld has been restarted.

# local-infile=0 in your /etc/my.cnf

For security reasons, it’s often a good idea to have:

present in your system my.cnf file.

# mysql 5.5 > mariadb 5.5 > mariadb 10.0 > mariadb 10.1 > mariadb 10.2 > mariadb 10.3

If you have mysql_backup=yes set set in options.conf file then a full raw sql backup will be run prior to the upgrade. It goes without saying, always make backups, either with this tool or via other means. It makes sense to perform backup just once, next disable it during the upgrade by multiple hops.

# new method

CustomBuild 2.0 rev 2914 has the ability to very easily start with a fresh MySQL/MariaDB install of any version.

# setting up da to use a remote mysql server

If you host a large database that can’t be split up, and your server doesn’t have the resources to handle it, you can set up MySQL to be run on an external server.

# wait for the backup to complete, then rename it to a unique folder so it’s not overwritten:

  1. Make a copy of the /var/lib/mysql folder (/home/mysql on Debian/FreeBSD). We’ll stop mysqld first, to avoid corruption during the copy.

The actual swap of RPMs must partially be done manually. Remove the MySQL RPMs:

The current state, we have data for 5.5 and no binaries/libraries installed. Install MariaDB:

Recompile anything that uses MySQL/MariaDB, mainly just PHP:

Enable backups for future updates, and enable mysqld monitoring again:

Check over everything to ensure it’s running correctly. If not, going back to MySQL 5.5 would use roughly the same procedure.

Now that you’re in the MariaDB family, you can upgrade to 10.0 or 10.1 from 5.5. I do not recommend going directly from MySQL 5.5 to MariaDB 10.x, even though it might work.

Rules for versions

Please see the MariaDB Documentation on upgrading from MySQL to MariaDBopen in new window to ensure the value you’re converting to is supported, based on your current version’s data.

# where is my my.cnf?

Your my.cnf for the system will be at:

/etc/my.cnf

Which usually does include a files from /etc/my.cnf.d/ directory.

Centos

Обновляем компоненты системы, а заодно и данные о репозиториях

sudo yum update

Enterprise database pricing for mariadb | mariadb

MariaDB Enterprise subscription customers have access to a range of optional expert services. From training your team, migration from legacy databases, real-time analytics challenges to architecting global, mission critical deployments you can throw pretty much anything at us – 😀 happy to catch the ball for you.

Open source database (rdbms) for the enterprise | mariadb

MariaDB takes a fundamentally different database approach to fit today’s modern world. Our pluggable, purpose-built storage engines support workloads that previously required a variety of specialized databases. Organizations can now depend on a single complete database for all their needs, whether on commodity hardware or their cloud of choice. Deployed in minutes for transactional, analytical or hybrid use cases, MariaDB delivers unmatched operational agility without sacrificing key enterprise features, including real ACID compliance and full SQL.

 Experience the same benefits as customers like Deutsche Bank, DBS Bank, Nasdaq, Red Hat, ServiceNow, Verizon and Walgreens – industry leaders who trust MariaDB to deliver unmatched operational agility, provide enterprise reliability and drive collaborative innovation. Real business relies on MariaDB.

Explore MariaDB Products

Ubuntu

Перед установкой обновляем данные о репозиториях и индексах пакетов:

sudo apt-get update

Выбор типа сервера при создании новой базы данных

Создание новой базы данных рассмотрено в отдельной инструкции, поэтому подробно рассматривать этот процесс здесь не будем.

При создании базы данных в панели управления хостингом ISPmanager, можно изменить тип её сервера в меню настройки «Новая база данных». Для этого нужно выбрать один из возможных вариантов типа системы управления БД во вкладке «Сервер базы данных».

Для установки MySQL 5.5.60 — «MySQL».

Для установки MariaDB 10.3 — «mariadb-10.3».

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

  • Для MySQL 5.5.60 – «localhost».
  • Для MariaDB 10.3 – «127.0.0.1:3310».

Изменение баз данных в mysql и mariadb

Любая операция, выполняемая без явного указания базы данных, будет выполнена на текущую БД.

Чтобы узнать, какая база данных является текущей, наберите:

SELECT database(); ———— | database() | ———— | NULL       | ———— 1 row in set (0.01 sec)

Результат NULL сообщает, что на данный момент текущая база данных не выбрана.

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

USE new_database;Database changed

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

SELECT database(); ————— | database()   | ————— | new_database | ————— 1 row in set (0.00 sec)

Изменение существующего сервера базы данных

Рассмотрим процесс смены системы управления БД на примере перехода от MySQL 5.5.60 к MariaDB 10.3.

Настраиваем брандмауэр.

1. В окне Администрирование открываем Брандмауэр Windows в режиме повышенной безопасности.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

2. В открывшемся окне, в левой части, выбираем Правила для входящих подключений. В правой части кликаем по Создать правило…

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

3. В новом окне выбираем Предопределенные. Из выпадающего списка выбираем FTP-сервер. Кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

4. Отмечаем галочками все пункты, кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

5. Следующим шагом выбираем Разрешить подключение, кликаем Готово.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

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

Подключиться к серверу можно любым FTP-клиентом указав IP-адрес сервера, имя пользователя и пароль, например FileZilla. Однако, доступность сервера можно проверить и с помощью Internet Explorer. В строке адреса указываем ftp://IP.адрес.нашего.сервера/ (либо доменное имя). Указываем имя пользователя и пароль.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Настройка

Большинство программ устанавливаются с параметрами по умолчанию. Независимо от дистрибутива рекомендуется выполнить оптимизацию параметров безопасности.

sudo mysql_secure_installation

Да, именно “mysql”, потому что проект MariaDB “вытек” из MySQL.

В самом начале программа запросит пароль для пользователя root. Если пароль не был установлен, то нажимаем Enter. На большинство вопросов можно ответить “y”. Вопросы и перевод к ним приведены ниже:

Настройка защищенного (secure) ftp.

Для защиты трафика рекомендуется использовать SSL-сертификаты. Можно использовать самоподписанные сертификаты либо выданные центром сертификации. Обратите внимание, что при подключении к серверу с самоподписанным сертификатом пользователь будет уведомлен об этом.

Переходим к настройке сервера.

1. Открываем Администрирование. Можно из меню Пуск, но если там отсутствует этот пункт, то Пуск -> Панель управления -> Система и безопасность — > Администрирование

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

2. Запускаем Диспетчер служб IIS

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

3. В открывшемся окне, в левой части, разворачиваем ветку под необходимым сервером. Кликаем правой кнопкой мыши по элементу Сайты и выбираем пункт Добавить FTP-сайт…

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

4. В новом окне Добавить FTP-сайт указываем имя и путь до каталога где будут расположены файлы. Кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

5. В обновленном окне указываем на каких IP-адресах будет запущен FTP-сервер (актуально, когда у сервера несколько сетевых интерфейсов либо алиасов), а также указываем порт, который будет прослушивать служба (по умолчанию 21 TCP-порт). Проверяем наличие галочки Запускать сайт FTP автоматически. В настройках SSL указываем Без SSL. Если требуется шифрование, тогда выбираем соответствующий пункт и указываем сертификат. Кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

6. Следующим этапом настраиваем аутентификацию. В разделе Проверка подлинности выбираем Обычный (если требуется анонимное предоставление доступа следует выбрать Анонимный). В разделе Авторизация можно гибко указать доступ для пользователей. В нашем примере разрешим доступ Всем пользователям, кроме анонимных. Разрешаем чтение и запись. Кликаем Готово.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

7. В случае успешности, в окне Диспетчера служб IIS добавится строка с именем добавленного FTP-сервера (сайта). Сворачиваем или закрываем это окно. Оно нам более не понадобится.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Правка конфигурационного файла joomla

Выбрать в списке на вкладке «Каталог» файл «configuration.php» и нажать «Изменить» в верхнем меню.

Ввести в файл данные, соответствующие новой базе данных:

Правка конфигурационного файла opencart

Выбрать в списке на вкладке «Каталог» файл «config.php» и нажать «Изменить» в верхнем меню.

Ввести в файл данные, соответствующие новой базе данных:

Правка конфигурационного файла wordpress

Выбрать в списке на вкладке «Каталог» файл «wp-config.php» и нажать «Изменить» в верхнем меню.

Ввести в файл данные, соответствующие новой базе данных:

Проверка подключения к субд

Подключение к СУБД происходит следующей командой:

mysql -u <ИМЯ_ПОЛЬЗОВАТЕЛЯ> -p

Если это первое подключение и другие пользователи не были добавлены, следует подключаться от пользователя root:

mysql -u root -p

Затем следует ввести пароль пользователя root, если пароль не был задан, то нажать Enter.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Выход из оболочки по команде:

exit

Проверка состояния сервера

Иногда может потребоваться проверка состояния работы сервера. Данная операция может быть выполнена командой:

sudo service mysql status

Просмотр баз данных mysql и mariadb

Чтобы получить список существующих баз данных, используйте команду:

SHOW DATABASES; ——————— | Database           | ——————— | information_schema || mysql              || new_database       || other_database     || performance_schema | ——————— 5 rows in set (0.00 sec)

Базы данных information_schema, performance_schema и mysql в большинстве случаев создаются по умолчанию, без крайней необходимости (и умения с ними работать) их лучше не трогать.

Создадим самоподписанный сертификат.

1. Запускаем Диспетчер служб IIS (см. выше Настройку сервера).

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

2. В открывшемся окне, в левой части, разворачиваем ветку под необходимым сервером. Выбираем Сертификаты сервера.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

3. В новом окне, в правой части, выбираем Создать самозаверенный сертификат.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

4. В открывшемся окне указываем имя сертификата и его тип — Личный. Кликаем Ок.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Сертификат создан. Теперь перейдем к настройке защищенного FTP.

1. В окне Диспетчер служб IIS, в левой части, разворачиваем ветку под необходимым сервером, выбираем созданный сервер. В основной части окна выбираем Параметры SSL FTP.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

2. В обновленном окне, в выпадающем списке, выбираем созданный сертификат, либо выданный центром сертификации, если такой имеется. Выбираем Требовать SSL-соединения. В правой части окна выбираем Применить. Закрываем окно, если необходимо.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Для подключения к защищенному FTP-серверу рекомендуем использовать программу WinSCP.

Файловый протокол — FTP

Шифрование — Явное шифрование TLS/SSL (TLS/SSL Explicit encryption)

Имя узла — IP-адрес или доменное имя.

Порт — 21, либо который был указан.

Имя и пароль пользователя системы.

Кликаем Войти (Login)

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

Создание базы данных в mysql и mariadb

Войдите в MySQL или MariaDB при помощи следующей команды:

mysql -u root -p

Введите пароль администратора, установленный во время инсталляции MySQL/MariaDB.

Теперь можно создать базу данных, введя команду:

CREATE DATABASE new_database;Query OK, 1 row affected (0.00 sec)

Чтобы избежать ошибок, возникающих в случае, если БД с таким именем уже существует, используйте команду:

CREATE DATABASE IF NOT EXISTS new_database;Query OK, 1 row affected, 1 warning (0.01 sec)

Warning означает, что база данных с таким именем уже существует и новая БД не была создана.

Если же опция IF NOT EXISTS не была использована, а БД с таким именем уже существует, появится следующее уведомление об ошибке:

ERROR 1007 (HY000): Can’t create database ‘other_database’; database exists

Удаление баз данных mysql и mariadb

Чтобы удалить базу данных в MySQL/MariaDB, используйте команду:

DROP DATABASE new_database;Query OK, 0 rows affected (0.00 sec)

Примечание: данную операцию невозможно отменить!  Убедитесь, что базу данных действительно нужно удалить, прежде чем нажать enter!

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

DROP DATABASE new_database;ERROR 1008 (HY000): Can’t drop database ‘new_database’; database doesn’t exist

Чтобы предотвратить эту ошибку и добиться выполнения команды вне зависимости от того, существует БД или нет, используйте опцию IF EXISTS:

DROP DATABASE IF EXISTS new_database;Query OK, 0 rows affected, 1 warning (0.00 sec)

В данном случае warning значит, что такой базы данных не существует, но команда выполнена.

Установим веб-сервер iis

1. Запускаем Диспетчер серверов из меню Пуск или кликом по значку на панели задач.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

2. Выбираем пункт Добавить роли и компоненты.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

3. В новом окне выбираем, слева, Тип установки, затем Установка ролей или компонентов, кликаем по кнопке Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

4. Из предложенного пула серверов выбираем необходимый. В нашем случае он один, кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

5. В списке ролей находим Веб-сервер (IIS) и ставим галочку напротив этого пункта.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

6. В новом окне Мастер добавления ролей и компонентов просто кликаем по Добавить компоненты. Данное окно обычно появляется при первой установке Веб-сервера (IIS). Кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

7. Слева кликаем по Служба ролей (подпункт Роль Веб-сервера (IIS)). Ставим галку напротив FTP-сервер. При необходимости устанавливаем галку напротив Расширяемость FTP. Кликаем Далее.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

8. Проверяем компоненты для установки. При первой установке, рекомендуем установить галку в поле Автоматический перезапуск конечного сервера, если потребуется. Кликаем Установить. Важно! При первой установке Веб-сервера (IIS) будут установлены дополнительные компоненты службы.

Управление базами данных MySQL и MariaDB на облачном сервере | 8HOST.COM

9. Ожидаем завершения процесса установки. По окончании кликаем Закрыть.

Итоги

Итак, данное руководство ознакомило с базовыми навыками, необходимыми для управления базами данных MySQL или MariaDB. Конечно, есть еще огромное множество функций, которые нужно научиться использовать.

Tags:

Оцените статью
Хостинги