1

Я только что установил MySQL-сервер с помощью следующей команды

$ sudo apt install mysql-server mysql-client mysql-common

Затем, когда я вызываю команду mysql_secure_installation MySQL просит ввести пароль root:

UXM

Я не установил пароль для mysql-сервера и спрашивает меня об этом.

Как я могу установить правильный пароль? Есть ли пароль по умолчанию?

2 ответа2

2

Хотя оригинальный постер утверждает, что нашел ответ на этот вопрос в этом ответе, для меня это не имело никакого смысла. Но теперь я понимаю, что некоторые дистрибутивы Debian/Ubuntu используют метод аутентификации на основе сокетов. Этот метод аутентификации, включаемый по умолчанию, естественно, потребует одного использования sudo чтобы войти в MySQL, как они описывают.

Но в общем случае нет причин запускать mysql_secure_installation через sudo . В большинстве случаев это не имеет смысла, поскольку MySQL не нужен sudo для клиентской транзакции, подобной этой ... Если только не работает аутентификация на основе сокетов. А mysql_secure_installation - это всего лишь сценарий Bash, который выполняет кучу команд в удобном и удобном пакете, позволяющем обновить некоторые элементы безопасности, связанные с MySQL. Просто посмотрите на исходный код, чтобы понять, что я имею в виду.

Поэтому, если вы работаете в системе, в которой не используется аутентификация на основе сокетов, и сталкиваетесь с подобной проблемой, решение состоит в том, что либо пароль будет пустым для более старых версий MySQL. Так что вы просто запустите это, чтобы попасть в MySQL:

mysql -uroot -p

Или в случае mysql_secure_installation просто нажмите Return или Enter, когда будет предложено ввести пароль.

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

«2016-05-16T07: 09: 49.796912Z 1 [Примечание] Для root @ localhost: 8)13ftQG5OYl генерируется временный пароль»

Это пример, взятый из записи в блоге Persona по этой теме. Относительно того, где находится эта запись в журнале MySQL, она может находиться в /var/log/mysqld.log на сервере CentOS/RedHat или отображаться в качестве вывода из пакета, установленного в системах Ubuntu/Debian.

Но простая проверка журнала ошибок на наличие «временного пароля» предоставит вам исходный пароль root MySQL устанавливает при первой установке.

0

Я нашел решение. Это должно быть выполнено от имени superuser

Я должен был выполнить $ sudo mysql_secure_installation

Кроме того, если я хочу , чтобы войти в mysql на терминале я должен sudo это

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .