Mysql настройка ubuntu: Установка и настройка MySQL в Ubuntu 20.04 LTS

Содержание

Как установить и настроить MySQL в Ubuntu 20.04 LTS

MySQL, что означает My (имя дочери создателя этой базы Микаэля Видениуса) Structured Query Language, является системой управления реляционными базами данных с открытым исходным кодом. Эта СУБД поддерживается Oracle и работает практически на всех платформах, таких как Linux, UNIX и MS Windows. MySQL обычно является первым выбором для онлайн-публикаций и веб-приложений. Facebook, YouTube и Twitter используют MySQL в качестве своей СУБД. MySQL является частью очень популярного стека LAMP: Linux, Apache, MySQL и Python / PHP / Perl.

В этой статье мы шаг за шагом опишем, как действовать:

  • Установим последнюю версию MySQL, доступную в репозитории пакетов apt
  • Запустим сценарий безопасности MySQL
  • Настроим пользователя root для доступа к оболочке MySQL
  • Проверим, что MySQL работает

Выполнили команды и процедуры будем в системе Ubuntu 20.04 LTS.

Установка MySQL и настройка безопасности

В этом разделе мы рассмотрим как установить MySQL из командной строки Ubuntu и настроить безопасность.

Вы можете открыть командную строку Ubuntu или терминал либо из панели поиска средства запуска приложений, либо нажав Ctrl + Alt + T.

Шаг 1. Обновите индекс репозитория

Выполните следующую команду от имени sudo, чтобы обновить индекс локального репозитория:

$ sudo apt-get update
Шаг 2. Установите сервер MySQL с помощью apt

Выполните следующую команду от имени sudo, чтобы установить MySQL из репозиториев APT.

$ sudo apt-get install mysql-server

Введите Y и нажмите Enter; После этого в вашей системе будет установлен MySQL.

Шаг 3. Проверьте установку (необязательно)

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

$ mysql --version
Шаг 4. Настройте параметры безопасности, запустив предоставленный сценарий безопасности.

Всякий раз, когда вы устанавливаете новую копию MySQL, вам следует изменить некоторые настройки по умолчанию, чтобы повысить безопасность вашей установки MySQL.  К ним относятся удаление тестовых пользователей, тестовых баз данных и разрешение удаленного входа в систему пользователем root.

Выполните следующую команду от имени sudo, чтобы запустить сценарий безопасности:

$ sudo mysql_secure_installation

Когда вы запустите эту команду, первое, что вам будет предложено сделать, это настроить плагин Validate Password. Это позволяет вам установить безопасный пароль для root. Чтобы запустить плагин Validate Password введите Y. Вы получите следующее приглашение:

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

Затем система отобразит надежность введенного вами пароля, а также спросит вас, хотите ли вы продолжить ввод пароля.

Введите Y и нажмите Enter.

Теперь система будет задавать вам серию вопросов и вы можете установить повышенный уровень безопасности своей системы.

Первый вопрос – хотите ли вы удалить анонимных тестовых пользователей?

Нажмите y и клавишу Enter.

Второй вопрос –  хотите ли вы запретить вход пользователя root из удаленной системы. Для безопасности системы пользователю root должно быть разрешено подключаться только с localhost.

Поэтому рекомендуется ввести y.

Третий вопрос – хотите ли вы удалить из вашей системы базу данных MySQL по умолчанию с именем «test», а также удалить доступ к ней.

Введите Y, чтобы удалить эту тестовую базу данных.

Чтобы все ваши изменения, настроенные выше, вступили в силу, система должна перезагрузить таблицы разрешений. Введите Y, и все ваши изменения будут применены.

Настройка root для использования оболочки MySQL

При запуске скрипта безопасности вы указали пароль для root. Однако этому пользователю не разрешено подключаться к MySQL Shell с тем же паролем. Вы можете настроить root для использования MySQL Shell, изменив метод аутентификации с «auth_socket» по умолчанию на «mysql_native_password».

Вот как это сделать:

Шаг 1. Запустите MySQL Shell

Сначала запустите оболочку MySQL, выполнив следующую команду от имени sudo:

$ sudo mysql

Это запустит оболочку MySQL, чтобы вы могли работать с подсказкой MySQL.

Шаг 2. Проверьте метод аутентификации для пользователей MySQL

В командной строке MySQL введите следующую команду, которая позволит вам проверить метод / плагин аутентификации, который в настоящее время используют все ваши учетные записи MySQL:

mysql> SELECT user,authentication_string,plugin,host FROM mysql.user;

В приведенных выше выходных данных вы можете видеть, что root по умолчанию использует плагин auth-socket для аутентификации.

Шаг 3. Измените метод аутентификации для root

Наша цель – аутентифицировать пользователя root в MySQL с помощью пароля. Для этого выполните следующую команду, в которой пользователь root будет идентифицирован с помощью mysql_native_password. Помните, что этот пароль должен быть очень надежным.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

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

Шаг 4. Обновите привилегии

Пришло время указать серверу использовать новые настройки разрешений с этого момента. Чтобы перезагрузить таблицы предоставления и зарегистрировать изменения выполните следующую команду в командной строке MySQL:

mysql> FLUSH PRIVILEGES;
Шаг 5. Еще раз проверьте метод аутентификации для пользователей MySQL

Теперь, если вы повторно проверите метод аутентификации для своих учетных записей MySQL с помощью следующей команды, вы увидите, что ваш пользователь root теперь для аутентификации использует плагин mysql_native_password :

mysql> SELECT user, authentication_string, plugin, host FROM mysql.user;

Теперь, когда ваш пользователь root настроен для подключения к оболочке MySQL с безопасным паролем, вы можете выйти из оболочки с помощью следующей команды:

mysql> exit
Тестирование работы MySQL

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

Метод 1.

Проверьте статус mysql.service

После установки MySQL в вашей системе mysql.service, скорее всего, должен запуститься автоматически. Вывод следующей команды должен проверять активный статус службы:

$ systemctl status mysql.service

Если по какой-то причине служба не запущена, вы можете использовать следующую команду в качестве sudo для запуска службы:

$ sudo systemctl start mysql

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

$ sudo systemctl stop mysql
Метод 2: подключившись к MySQL Admin как root и выполнив любую административную команду

MySQL Admin – это клиент, который позволяет выполнять административные операции в MySQL. В качестве примера давайте запустим на нем одну из административных команд, чтобы проверить, правильно ли работает система и настроен ли наш корень для этого.

$ sudo mysqladmin -p -u root version

Эта команда предназначена для подключения к MySQL как root, получения пароля root и затем возврата номера версии администратора MySQL.

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

Процесс установки и настройки MySQL в Ubuntu некоторым может показаться обременительным, особенно при использовании командной строки. Однако, если вы внимательно выполните указанные выше шаги один за другим, у вас не будет проблем с надежной, безопасной и стабильной установкой MySQL, работающей на вашем Ubuntu.

Как установить и настроить MySQL в Ubuntu 20.04 LTS


Метки: mysql    ubuntu

Как установить MySQL в Ubuntu 18.04

29.12.20202020-12-29T03:04:01+03:002021-01-14T14:14:29+03:00
Linux, Ubuntu
Комментариев нет

MySQL — самая популярная система управления реляционными базами данных с открытым исходным кодом. Он быстрый, простой в использовании, масштабируемый и неотъемлемая часть популярных стеков LAMP и LEMP .

В этом руководстве мы покажем вам, как установить и защитить MySQL на машине с Ubuntu 18.04.

Содержание

Подготовка

Убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .

Установка MySQL в Ubuntu

На момент написания этой статьи последней версией MySQL, доступной в официальных репозиториях Ubuntu, была версия MySQL 5.7.

Чтобы установить MySQL на свой сервер Ubuntu, выполните следующие действия:

  1. Сначала обновите индекс пакета apt, набрав:
    sudo apt update
  2. Затем установите пакет MySQL с помощью следующей команды:
    sudo apt install mysql-server
  3. После завершения установки служба MySQL запустится автоматически. Чтобы проверить, запущен ли сервер MySQL, введите:
    sudo systemctl status mysql
    ● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-06-20 11:30:23 PDT; 5min ago Main PID: 17382 (mysqld) Tasks: 27 (limit: 2321) CGroup: /system. slice/mysql.service `-17382 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Обеспечение безопасности MySQL

Пакет сервера MySQL поставляется со сценарием mysql_secure_installation который может выполнять несколько операций, связанных с безопасностью.

Запустите сценарий, набрав:

sudo mysql_secure_installation

Вам будет предложено настроить VALIDATE PASSWORD PLUGIN который используется для проверки надежности паролей пользователей MySQL и повышения безопасности. Существует три уровня политики проверки пароля: низкий, средний и надежный. Нажмите ENTER если вы не хотите устанавливать плагин проверки пароля.

В следующем запросе вам будет предложено установить пароль для пользователя root MySQL. Как только вы это сделаете, сценарий также попросит вас удалить анонимного пользователя, ограничить доступ пользователя root к локальному компьютеру и удалить тестовую базу данных. Вы должны ответить «Д» (да) на все вопросы.

Войти как root

Для взаимодействия с сервером MySQL из командной строки вы можете использовать клиентскую утилиту MySQL, которая устанавливается как зависимость от пакета сервера MySQL.

В системах Ubuntu с MySQL 5.7 (и новее) пользователь root по умолчанию аутентифицируется плагином auth_socket .

Плагин auth_socket аутентифицирует пользователей, которые подключаются с localhost через файл сокета Unix. Это означает, что вы не можете пройти аутентификацию как root, указав пароль.

Чтобы войти на сервер MySQL как пользователь root, введите:

sudo mysql

Вам будет представлена оболочка MySQL, как показано ниже:

Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 8
Server version: 5.7.22-0ubuntu18.04.1 (Ubuntu)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates.  Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

Если вы хотите войти на свой сервер MySQL как root из внешней программы, такой как phpMyAdmin вас есть два варианта.

Первый — изменить метод аутентификации с auth_socket на mysql_native_password . Вы можете сделать это, выполнив следующую команду:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';FLUSH PRIVILEGES;

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

GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';

Выводы

Теперь, когда ваш сервер MySQL запущен и работает, и вы знаете, как подключиться к серверу MySQL из командной строки, вы можете проверить следующие руководства:

  • Как управлять учетными записями пользователей и базами данных MySQL
  • Как сбросить пароль root MySQL
  • Как создать базу данных MySQL

Если вы предпочитаете веб-интерфейс командной строке, вы можете установить phpMyAdmin и управлять своими базами данных MySQL и пользователями через него.

Этот пост является частью серии статей о том, как установить LEMP stack на Ubuntu 18.04. Другие сообщения из этой серии:

  • Как установить Nginx в Ubuntu 18.04
  • Как настроить серверные блоки Nginx в Ubuntu 18.04
  • Защитите Nginx с помощью Let’s Encrypt в Ubuntu 18.04
  • Как установить PHP в Ubuntu 18.04

Как установить MySQL на Ubuntu 22.04/Ubuntu 20.04

Аарон Кили

Категории Ubuntu

17 комментариев

Сервер сообщества MySQL — это бесплатная, популярная и кроссплатформенная система управления базами данных с открытым исходным кодом, которая поддерживает как SQL , так и NoSQL и имеет подключаемую архитектуру механизма хранения.

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

Он имеет множество вариантов использования в хранилище документов, облаке, системах высокой доступности, IoT (Интернет вещей), Hadoop, больших данных, хранилищах данных, стеке LAMP или LEMP для поддержки веб-сайтов/приложений большого объема и гораздо более.

В этой статье мы объясним новую установку системы баз данных MySQL 8.0 на выпусках Ubuntu 22.04 , Ubuntu 20.04, и Ubuntu 18.04 . Прежде чем мы перейдем к фактическим шагам установки, давайте посмотрим на сводку:

Что нового в MySQL 8.0
  • База данных теперь включает словарь транзакционных данных.
  • Поставляется с поддержкой операторов Atomic DDL.
  • Улучшенная безопасность и управление учетными записями.
  • Улучшения в управлении ресурсами.
  • Несколько улучшений InnoDB.
  • Новый тип резервного замка.
  • Набор символов по умолчанию изменен на utf8mb4 с latin1.
  • Несколько улучшений JSON.
  • Поставляется с поддержкой регулярных выражений с использованием международных компонентов для Unicode (ICU).
  • Новое ведение журнала ошибок, которое теперь использует архитектуру компонентов MySQL.
  • Усовершенствования репликации MySQL.
  • Поддерживает общие табличные выражения (как нерекурсивные, так и рекурсивные).
  • Имеет улучшенный оптимизатор.
  • Дополнительные оконные функции и прочее.

Содержание

1

Шаг 1: Обновление сервера Ubuntu

К счастью, для установки можно использовать репозиторий пакетов APT по умолчанию.0013 Сервер MySQL , клиент и другие компоненты. На момент написания этой статьи доступная версия MySQL — 8. 0.28.

Чтобы установить его, вы должны обновить индекс пакета на вашем сервере Ubuntu, выполнив следующие команды apt.

 $ sudo подходящее обновление
$ sudo подходящее обновление
 

Затем используйте команду apt-cache (запрашивает кэш пакетов) для поиска серверных и клиентских пакетов MySQL на вашем сервере Ubuntu.

  $ apt-cache search mysql-server 


mysql-server — сервер базы данных MySQL (метапакет в зависимости от последней версии)
mysql-server-8.0 — двоичные файлы сервера базы данных MySQL и настройка системной базы данных
mysql-server-core-8.0 — исполняемые файлы сервера базы данных MySQL
default-mysql-server — исполняемые файлы сервера базы данных MySQL и настройка системной базы данных (метапакет)
default-mysql-server-core — исполняемые файлы сервера баз данных MySQL (метапакет)
mariadb-server-10.6 — исполняемые файлы сервера базы данных MariaDB
mariadb-server-core-10.6 — файлы основного сервера базы данных MariaDB
 

Шаг 2: Установите MySQL на сервер Ubuntu

Затем выполните следующую команду, чтобы установить пакеты для сервера сообщества MySQL , клиента и общих файлов базы данных.

 $ sudo apt-get установить mysql-сервер
 

Установите MySQL 8.0 в Ubuntu 18.04

Файл конфигурации MySQL по умолчанию и файл журнала ошибок будут расположены в следующем месте, вы можете просмотреть их с помощью редактора nano или команды tail, как показано.

 $ судо нано /etc/my.cnf
$ sudo tail -f /var/log/mysql/error.log
 

Шаг 3: Управление сервером MySQL через Systemd

В Ubuntu после установки пакета сервера MySQL его службы обычно запускаются автоматически после настройки пакета. Вы можете проверить, запущен ли сервер MySQL , используя следующую команду systemctl.

 $ статус sudo systemctl mysql.service
 

Проверьте состояние сервера MySQL

Если по той или иной причине он не запускается автоматически, используйте приведенные ниже команды для запуска и включения его запуска во время загрузки системы следующим образом.

 $ sudo systemctl запустить mysql.service
$ sudo systemctl статус mysql. service
$ sudo systemctl запустить mysql.service
$ sudo systemctl перезапустить mysql.service
 

Шаг 4. Задайте корневой пароль MySQL

Сначала откройте приглашение MySQL :

 $ sudo mysql
 

Затем выполните следующую команду ALTER USER , чтобы установить пароль root для MySQL, используя метод аутентификации mysql_native_password , как показано.

  mysql>  ИЗМЕНИТЬ ПОЛЬЗОВАТЕЛЯ 'root'@'localhost' ИДЕНТИФИЦИРОВАННЫЙ С mysql_native_password BY ' YOUR-STRONG-PASSWORD ';
 

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

  mysql>  выход
 

Установите пароль MySQL в Ubuntu

Шаг 5: Безопасная установка сервера MySQL

По умолчанию установка MySQL небезопасна. Чтобы защитить его, запустите сценарий безопасности, который поставляется с двоичным пакетом.

 $ судо mysql_secure_installation
 

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

Затем введите yes/y на следующие контрольные вопросы:

  • Удалить анонимных пользователей? (Нажмите y|Y для Да , любую другую клавишу для Нет) : y
  • Запретить удаленный вход в систему root? (Нажмите y|Y для Да , любую другую клавишу для Нет) : y
  • Удалить тестовую базу данных и доступ к ней? (Нажмите y|Y для Да , любой другой ключ для Нет): y
  • Перезагрузить таблицы привилегий сейчас? (Нажмите y|Y для Да , любую другую клавишу для Нет) : y

Защита MySQL в Ubuntu

Для дополнительной защиты сервера MySQL прочитайте нашу статью 12 Рекомендации по безопасности MySQL для Linux.

Шаг 6: Создание базы данных MySQL с пользователем

Установка MySQL поставляется с учетной записью root, которую вы можете использовать для управления всей базой данных, но из соображений безопасности я предлагаю вам создать обычную учетную запись пользователя с ограниченными привилегиями для базы данных, как показано.

 $ mysql -u корень -p
  mysql>  СОЗДАТЬ БАЗУ ДАННЫХ tecmintdb;
  mysql>  СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'aaron'@'localhost', ИДЕНТИФИЦИРОВАННОГО 'rig!43B#web1rdl0gn1';
  mysql>  ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ НА tecmintdb.* TO 'aaron'@'localhost';
 

Теперь, чтобы войти в систему как новый пользователь MySQL, используйте следующую команду.

 $ mysql -u аарон -p
 

Создание базы данных MySQL с пользователем

Шаг 7. Установка дополнительных продуктов и компонентов MySQL

Кроме того, вы можете установить дополнительные компоненты MySQL , которые, по вашему мнению, необходимы для работы с сервером, такие как mysql-workbench-community , libmysqlclient18, и многие другие.

 $ sudo apt-получить обновление
$ sudo apt-get установить mysql-workbench-community libmysqlclient18
 

Наконец, чтобы получить доступ к оболочке MySQL , введите следующую команду.

 $ sudo mysql -u корень -p
 

Подключиться к серверу MySQL

Вот оно! В этой статье мы объяснили, как установить MySQL в Ubuntu 22.04 и Ubuntu 20.04 . Если у вас есть какие-либо вопросы или мысли, которыми вы хотите поделиться, используйте форму комментариев ниже, чтобы связаться с нами.

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

Аарон Кили

Аарон Кили — энтузиаст Linux и FOSS, перспективный системный администратор Linux, веб-разработчик и в настоящее время создатель контента для TecMint, который любит работать с компьютерами и твердо верит в возможность делиться знаниями.


Каждое руководство в TecMint создается командой опытных системных администраторов Linux , чтобы соответствовать нашим высоким стандартам качества .

Присоединяйтесь к еженедельному бюллетеню TecMint (подписались более 156 129 энтузиастов Linux)

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

Настройка сервера MySQL в операционной системе Ubuntu —

Последнее обновление:  2020-10-09

Автор:  Jered Heeschen


Статья посвящена основам MySQL®.
настройка сервера в операционной системе Ubuntu®. В нем описано, как установить пароль root, создать базу данных,
и добавить пользователя для базы данных. В этой статье конфигурация MySQL рассматривается более подробно, чтобы вы могли
настроить его конфигурацию и быть готовым на случай, если что-то пойдет не так.

Найдите файлы конфигурации

По умолчанию вы можете найти файлы конфигурации MySQL® в:

 /etc/mysql
 

Однако, если их там нет, вы можете использовать mysqld , чтобы найти
конфигурация. Выполните следующую команду:

 $ /usr/sbin/mysqld --help --verbose
 

Первая часть длинного ответа описывает варианты
вы можете отправить на сервер при запуске. Вторая часть отображает
конфигурация, заданная при компиляции сервера.

Рядом с началом вывода найдите пару строк, похожих на следующий пример:

 Параметры по умолчанию считываются из следующих файлов в указанном порядке:
/etc/my. cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
 

Сервер проверяет этот список, пока не найдет файл конфигурации.

Файл конфигурации my.cnf

Откройте и просмотрите файл /etc/mysql/my.cnf .

Строки комментариев, начинающиеся с # , документируют использование различных настроек. Они показывают подробную информацию о
расположение файлов журналов, файлов базы данных и других сведений.

Группы конфигурации

Файл конфигурации содержит строки с одним словом в квадратных скобках, например [клиент] или [mysqld] .
Эти разделы являются группами конфигурации. Они делают важные элементы конфигурации более заметными для программ.
которые читают файл конфигурации.

Раздел конфигурации сервера технически представляет собой набор инструментов. Это включает в себя сервер ( mysqld ),
клиент ( mysql ) и другие инструменты. Эти программы выглядят в my. cnf , чтобы посмотреть, как они должны себя вести.

Раздел конфигурации клиента управляет клиентом mysql , а раздел mysqld управляет конфигурацией сервера.

Файлы журнала

Файлы журнала — лучшее место для начала устранения неполадок любой программы. По умолчанию MySQL хранит файлы журналов в
следующий каталог:

 /var/log/mysql
 

Возможно, вам потребуется использовать sudo , чтобы получить список файлов в этом каталоге.

Если вы не найдете журналы MySQL® в каталоге по умолчанию, проверьте конфигурацию MySQL. Посмотреть my.cnf
файл и найдите строку log_error , например:

 log_error = /var/log/mysql/error.log
 

Если вы не видите такой строки, создайте ее в разделе mysqld , чтобы MySQL® мог использовать собственный журнал ошибок. Использовать
местоположение в примере, создав каталог /var/log/mysql , если он еще не существует. Затем перезапустите
MySQL для внесения изменений.

Убедитесь, что пользователь может записывать в выбранный каталог журнала, управляя процессом mysql . Пользователь, запускающий
процесс определен в пользовательской конфигурации значение для mysqld в my.cnf .

Сетевые настройки

В разделах конфигурации клиента и сервера может быть параметр «порт». Порт под
раздел server определяет, какой порт прослушивает сервер. Порт по умолчанию 3306 , но вы можете изменить его.

Порт в разделе клиента указывает клиенту, к какому порту подключаться по умолчанию. Обычно вам нужны оба порта
настройки, чтобы соответствовать.

Если вы используете настройки по умолчанию, вы не увидите записи порта в файле конфигурации. Если вы хотите изменить
порт, добавьте следующие строки в соответствующие категории:

 [клиент]
порт = 3306
[mysqld]
порт = 3306
 

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

Если вы используете свой сервер MySQL на компьютере, отличном от вашего приложения, вам следует выполнить привязку к удаленно доступному
адрес вместо локального. Измените настройку адреса привязки, чтобы она соответствовала вашему общедоступному IP-адресу. Из соображений безопасности
вы должны использовать внутренний IP-адрес в сети.

Если вы не видите запись bind-address , поместите ее в категорию mysqld , чтобы помочь контролировать доступ к серверу:

 [mysqld]
$бинд-адрес = 127.0.0.1
 

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

mysqld и mysqld_safe

За кулисами существуют две версии сервера MySQL, mysqld и mysqld_safe . Оба читают одну и ту же конфигурацию
разделы. Тем не менее, mysqld_safe запускается с включенными дополнительными функциями безопасности, чтобы упростить восстановление после устранения неполадок.

Оба mysqld и mysqld_safe читают записи конфигурации в mysqld
раздел. Если вы включаете раздел mysqld_safe , то только mysqld_safe использует эти значения.

По умолчанию служба MySQL запускает mysqld_safe , что подходит.

mysqladmin

Инструмент mysqladmin позволяет выполнять некоторые административные функции из
командная строка, которая не рассматривается в этой статье. Ты мог бы
изучить инструмент более подробно позже, чтобы увидеть, что он может сделать,
особенно если вам нужно создать сценарии, которые выполняют такие функции, как
проверка состояния сервера или создание и удаление баз данных.

Резервные копии

У вас есть следующие варианты резервного копирования ваших баз данных, помимо обычных сделать резервную копию всего компьютера подход.
Два основных варианта — скопировать файлы базы данных или использовать mysqldump .

Копия файла

По умолчанию MySQL создает каталог для каждой базы данных в своем каталоге данных, /var/lib/mysql .

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

Чтобы убедиться, что вы правильно скопировали файлы базы данных, вы должны полностью отключить сервер MySQL перед копированием.

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

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

 $ mysql -u root -p -e "FLASH TABLES WITH READ LOCK;"
 

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

 $ mysql -u root -p -e "РАЗБЛОКИРОВАТЬ ТАБЛИЦЫ;"
 

Параметр клиента MySQL, -e , указывает клиенту выполнить запрос в кавычках, как если бы мы ввели его в оболочке MySQL®.

Если вы пишете эти команды в сценарии, вы можете поместить пароль в кавычки сразу после -p без пробела между
два, похожие на следующие примеры:

 $ mysql -u root -p"пароль" -e "СБРОСИТЬ ТАБЛИЦЫ С БЛОКИРОВКОЙ ЧТЕНИЯ;"
$ mysql -u root -p"пароль" -e "РАЗБЛОКИРОВАТЬ ТАБЛИЦЫ;"
 

Убедитесь, что вы установили разрешения для этого файла, чтобы ограничить доступ для чтения из соображений безопасности пароля.

mysqldump

Другой подход к резервному копированию вашей базы данных заключается в использовании инструмента mysqldump . Вместо копирования базы данных
файлы напрямую, mysqldump создает текстовый файл, представляющий базу данных. По умолчанию текстовый файл содержит список
операторов SQL для воссоздания базы данных, но вы также можете экспортировать базу данных в другом формате, таком как .CSV
или .XML . Вы можете прочитать справочную страницу для mysqldump , чтобы увидеть все его параметры.

Операторы, сгенерированные mysqldump , передаются прямо в стандартный вывод. Вы можете указать для перенаправления вывода с помощью
запустив в командной строке следующую команду:

 $ mysqldump -u root -p demodb > dbbackup.sql
 

Эта команда сообщает mysqldump воссоздать базу данных demodb в операторах SQL и записать их в файл
dbbackup.sql . Обратите внимание, что параметры имени пользователя и пароля работают так же, как и в клиенте MySQL, так что вы можете
включите пароль непосредственно после -p в скрипт.

Восстановление из mysqldump

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

 $ mysql -u root -p demodb < dbbackup.sql
 

Также обратите внимание, что угловая скобка < меняет направление. Это переключает команду с перенаправления вывода на извлечение
ввод из существующего файла. Этот ввод отправляется команде mysql , что приводит к инструкциям по воссозданию базы данных.

По умолчанию сгенерированные операторы SQL добавляются к существующим таблицам базы данных, а не перезаписывают их. Если вы восстанавливаете резервную копию
над существующей базой данных, вы должны сначала удалить таблицы базы данных или удалить и воссоздать саму базу данных. Ты можешь измениться
это поведение с помощью $ --add-drop-table с командой, которая создает mysqldump . Это вызывает mysqldump
чтобы добавить в файлы резервных копий команду, которая удаляет таблицы перед их воссозданием.

Механизм базы данных

Механизм базы данных — это процесс, который работает за кулисами,
запись в файлы и чтение данных из них. Вам нужно знать об этом, только если вы хотите запустить
приложение, оптимизированное для конкретного механизма базы данных.

Приложения, которым нужны таблицы, создают их по запросу и автоматически создают тип механизма.
Чтобы увидеть механизм, используемый таблицами вашей базы данных, вы можете запустить следующую команду в оболочке MySQL:
изменение demodb на имя вашей базы данных.:

 $ SHOW TABLE STATUS FROM demodb;
 
Выберите двигатель

В идеале вам не нужно выбирать двигатель. Если вы не очень хорошо знакомы с MySQL, разрешите приложению
чтобы выбрать один по умолчанию. Если вы пишете приложение, используйте движок по умолчанию, пока не почувствуете себя более комфортно.
с вашими вариантами.

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

Наиболее часто с MySQL используются два механизма баз данных: MyISAM и InnoDB . Механизм базы данных по умолчанию для MySQL
версия 5.1 и ранее — MyISAM , а InnoDB — ядро ​​базы данных по умолчанию, начиная с версии MySQL 5. 5.

MyISAM

Поскольку MyISAM какое-то время используется в MySQL по умолчанию, это наиболее совместимый выбор из двух основных движков.
Определенные типы поиска работают лучше на MyISAM , чем InnoDB . Несмотря на то, что он старший из двух, он
может быть лучшим выбором для данного типа приложения.

InnoDB

ПРИМЕЧАНИЕ. Администратор баз данных может помочь вам достичь наилучшей производительности InnoDB , поскольку InnoDB требует
множество настроек для вашей среды и шаблонов доступа. Конфигурация по умолчанию оптимальна для повседневного ПО
использование разработки.

InnoDB более отказоустойчива, чем MyISAM и обрабатывает сбои и восстановление с гораздо меньшим риском для базы данных
коррупция.

Если вашему приложению требуется InnoDB и вы используете MySQL 5.1 или более раннюю версию, может не быть никаких настроек
уже в файле конфигурации my.