Как установить MySQL на CentOS 7

Вступление

MySQL - это система управления базами данных с открытым исходным кодом, обычно устанавливаемая как часть популярной https://www.digitalocean.com/community/tutorials/how-to-install-linux -nginx-mysql-php-lemp-stack-on-centos-7 стек [LEMP] (Linux, Nginx, MySQL / MariaDB, PHP / Python / Perl). Он использует реляционную базу данных и SQL (язык структурированных запросов) для управления своими данными.

CentOS 7 предпочитает MariaDB, ветвь MySQL, управляемую первоначальными разработчиками MySQL и разработанную в качестве замены MySQL. Если вы запустите + yum install mysql на CentOS 7, то будет установлена ​​MariaDB, а не MySQL. Если вы задаетесь вопросом о MySQL против MariaDB, MariaDB, как правило, будет работать без проблем вместо MySQL, поэтому, если у вас нет конкретного варианта использования для MySQL, см. Как установить MariaDB на Centos 7 руководство.

В этом руководстве объясняется, как установить MySQL версии 5.7 на сервер CentOS 7.

Предпосылки

Чтобы следовать этому уроку, вам понадобится:

  • CentOS 7 с пользователем без полномочий root с привилегиями + sudo +. Подробнее о том, как настроить пользователя с этими привилегиями, вы можете узнать из руководства Initial Server Setup с CentOS 7 ,

Шаг 1 - Установка MySQL

Как упоминалось во введении, команда Yum для установки MySQL фактически устанавливает MariaDB. Чтобы установить MySQL, нам нужно посетить The MySQL community Yum Repository, который предоставляет пакеты для MySQL.

В веб-браузере посетите:

https://dev.mysql.com/downloads/repo/yum/

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

Найдите нужную версию и при необходимости обновите ее по ссылке ниже:

изображение: https: //assets.digitalocean.com/articles/mysql-centos7/repo-name-small.png [Снимок экрана с выделением текущего имени репозитория yum]

wget https://dev.mysql.com/get/.noarch.rpm

После сохранения файла rpm мы проверим целостность загрузки, запустив + md5sum + и сравнив его с соответствующим значением MD5, указанным на сайте:

md5sum .noarch.rpm
Output1a29601dc380ef2c7bc25e2a0e25d31e  mysql57-community-release-el7-9.noarch.rpm

Сравните этот вывод с соответствующим значением MD5 на сайте:

изображение: https: //assets.digitalocean.com/articles/mysql-centos7/md5-sum-small.png [выделение снимка экрана md5dsum]

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

sudo rpm -ivh .noarch.rpm

Это добавляет два новых репозитория MySQL yum, и теперь мы можем использовать их для установки сервера MySQL:

sudo yum install mysql-server

Нажмите + y +, чтобы подтвердить, что вы хотите продолжить. Поскольку мы только что добавили пакет, нам также будет предложено принять его ключ GPG. Нажмите + y +, чтобы загрузить его и завершить установку.

Шаг 2 - Запуск MySQL

Мы запустим демон с помощью следующей команды:

sudo systemctl start mysqld

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

sudo systemctl status mysqld

Если MySQL успешно запустился, вывод должен содержать + Active: active (running) +, и последняя строка должна выглядеть примерно так:

Dec 01 19:02:20 centos-512mb-sfo2-02 systemd[1]: Started MySQL Server.

В процессе установки временный пароль генерируется для пользователя root MySQL. Найдите его в + mysqld.log + с помощью этой команды:

sudo grep 'temporary password' /var/log/mysqld.log
Output2016-12-01T00:22:31.416107Z 1 [Note] A temporary password is generated for root@localhost:

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

Шаг 3 - Настройка MySQL

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

Используйте эту команду для запуска скрипта безопасности.

sudo mysql_secure_installation

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

OutputThe existing password for the user account root has expired. Please set a new password.

New password:

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

Вы получите отзыв о силе вашего нового пароля, и вам сразу же будет предложено изменить его снова. Поскольку вы только что это сделали, вы можете с уверенностью сказать + No +:

OutputEstimated strength of the password: 100
Change the password for root ? (Press y|Y for Yes, any other key for No) :

После того как мы отклоним запрос на изменение пароля еще раз, мы будем нажимать + Y +, а затем + ENTER + на все последующие вопросы, чтобы удалить анонимных пользователей, запретить удаленный вход в систему root, удалить тестовую базу данных и доступ к ней. и перезагрузите таблицы привилегий.

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

Шаг 4 - Тестирование MySQL

Мы можем проверить нашу установку и получить информацию о ней, подключившись к инструменту + mysqladmin +, клиенту, который позволяет вам запускать административные команды. Используйте следующую команду для подключения к MySQL от имени * root * (+ -u root +), запроса пароля (+ -p +) и возврата версии.

mysqladmin -u root -p version

Вы должны увидеть вывод, похожий на этот:

Выход

mysqladmin  Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, 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.

Server version          5.7.16
Protocol version        10
Connection              Localhost via UNIX socket
UNIX socket             /var/lib/mysql/mysql.sock
Uptime:                 2 min 17 sec

Threads: 1  Questions: 6  Slow queries: 0  Opens: 107  Flush tables: 1  Open tables: 100  Queries per second avg: 0.043

Это означает, что ваша установка прошла успешно.

Заключение

В этом руководстве мы установили и защитили MySQL на сервере CentOS 7. Чтобы узнать больше об использовании MySQL, может помочь это руководство по learning больше о командах MySQL. Вы также можете подумать о том, что implementlement некоторые дополнительные меры безопасности.

Related