- Default password of mysql in ubuntu server 16.04
- 20 Answers 20
- Как изменить пароль пользователя MySQL
- Подготовка
- Как изменить пароль пользователя MySQL
- 1. Войдите в оболочку MySQL как root.
- 2. Установите пароль пользователя MySQL.
- 3. Подтвердите новый пароль.
- Выводы
- Как изменить пароль пользователя MySQL
- Как сменить пароль пользователя MySQL
- Шаг 1. Как узнать версию MySQL
- Шаг 2. Вход в консоль MySQL
- Шаг 3. Просмотр хостов пользователя
- Шаг 4. Смена пароля пользователя при помощи SET PASSWORD
- Шаг 5. Смена пароля пользователя при помощи ALTER USER
- Шаг 6. Сброс кэша привилегий
- Шаг 7. Проверка нового пароля
- Выводы
Default password of mysql in ubuntu server 16.04
I have installed ubuntu 16.04 server. Mysql server was installed by default in it. When I am trying to access the mysql with mysql -u root -p , I am unable to log in to mysql because I dont have the password. Is there any default password? I have also tried with —skip-grant-tables , even this does not work. Even trying to log in with just mysql -u root is a failure.
I just posted a new WORKING answer to this problem. None of the other advice was working for me on 18.04. stackoverflow.com/questions/33991228/…
@Debashisenator if you find my answer to be helpful, I’ll appreciate if you accept my answer.. thanks!
20 Answers 20
This is what you are looking for:
sudo mysql —defaults-file=/etc/mysql/debian.cnf
MySql on Debian-base Linux usually use a configuration file with the credentials.
I had a fresh installation of mysql-server on Ubuntu 18.10 and couldn’t login with default password. Then only I got to know that by default root user is authenticated using auth_socket . So as in the answer when the plugin changed to mysql_native_password , we can use mysql default password
$ sudo apt install mysql-server $ sudo cat /etc/mysql/debian.cnf
You can find the following lines in there
user = debian-sys-maint password = password_for_the_user
$ mysql -u debian-sys-maint -p Enter password:
type the password from debian.cnf
mysql> USE mysql mysql> SELECT User, Host, plugin FROM mysql.user; +------------------+-----------+-----------------------+ | User | Host | plugin | +------------------+-----------+-----------------------+ | root | localhost | auth_socket | | mysql.session | localhost | mysql_native_password | | mysql.sys | localhost | mysql_native_password | | debian-sys-maint | localhost | mysql_native_password | +------------------+-----------+-----------------------+ 4 rows in set (0.00 sec) mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root'; mysql> COMMIT;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
mysql>UPDATE mysql.user SET authentication_string=PASSWORD('new_password') where user='root';
Sometimes you will need to restart your mysql server.
sudo service mysql restart
sudo systemctl restart mysql
Mysql by default has root user’s authentication plugin as auth_socket , which requires the system user name and db user name to be the same.
Specifically, log in as root or sudo -i and just type mysql and you will be logged in as mysql root , you can then create other operating users.
If you do not have a root on host, I guess you should not be allowed to login to mysql as root?
Although this is an old question, there are several of us still struggle to find an answer. At least I did. Please don’t follow all the lengthy solutions. You could simply login to your mysql as root without providing any password (provided it is a fresh installation or you haven’t changed the password since your installation) by adding sudo before your mysql command. $sudo mysql -uroot -p mysql> This is because mysql changed the security model in one of the latest versions.
You can simply reset the root password by running the server with —skip-grant-tables and logging in without a password by running the following as root or with sudo:
service mysql stop mysqld_safe --skip-grant-tables & mysql -u root mysql> use mysql; mysql> update user set authentication_string=PASSWORD("YOUR-NEW-ROOT-PASSWORD") where User='root'; mysql> flush privileges; mysql> quit # service mysql stop # service mysql start $ mysql -u root -p
After doing this I got an error saying «Plugin ‘unix_socket’ is not loaded». Solution: stackoverflow.com/a/37879449/2934081 (add update user set plugin=»mysql_native_password»; after the update user line).
Note that in Ubuntu systems running MySQL 5.7 (and later versions), the root MySQL user is set to authenticate using the auth_socket plugin by default rather than with a password. you will need to switch its authentication method from auth_socket to mysql_native_password
as @BeNiza said, they changed the security model. I did following steps and it works for mysql 5.7.27 on ubuntu 18.04
sudo apt install mysql-server
The MySQL database software is now installed, but its configuration is not yet complete.
To secure the installation, MySQL comes with a script that will ask whether we want to modify some insecure defaults. Initiate the script by typing:
you should press Y and hit the ENTER key at each prompt.
This will cause issues if you use a weak password
You can simply login to your mysql as root without providing any password by adding sudo before your mysql command.
mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘your-password’;
If you set a weak password you would see the following error:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Note: After configuring your root MySQL user to authenticate with a password, you’ll no longer be able to access MySQL with the sudo mysql command used previously. Instead, you must run the following: mysql -u root -p
After entering the password you just set, you will see the MySQL prompt.
Как изменить пароль пользователя MySQL
В этом руководстве мы покажем вам, как изменить пароль пользователя MySQL. Инструкции должны работать с любым современным дистрибутивом Linux, таким как Ubuntu 18.04 и CentOS 7.
Подготовка
В зависимости от версии сервера MySQL или MariaDB, которую вы используете в своей системе, вам нужно будет использовать разные команды для изменения пароля пользователя.
Чтобы узнать версию сервера базы данных, введите следующую команду:
Если в вашей системе установлен MySQL, результат будет выглядеть примерно так:
mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper
Или выведите такой вывод для MariaDB:
mysql Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Обязательно отметьте, какую версию MySQL или MariaDB вы используете. Если вы хотите получить список всех учетных записей пользователей MySQL, ознакомьтесь с этим руководством.
Как изменить пароль пользователя MySQL
Выполните следующие действия, чтобы изменить пароль пользователя MySQL:
1. Войдите в оболочку MySQL как root.
Войдите в оболочку MySQL, набрав следующую команду и при появлении запроса введите пароль root-пользователя MySQL:
Если вы не установили пароль для пользователя root MySQL, вы можете войти в систему с помощью sudo mysql .
2. Установите пароль пользователя MySQL.
ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'NEW_USER_PASSWORD';
FLUSH PRIVILEGES;
UPDATE mysql.user SET authentication_string = PASSWORD('NEW_USER_PASSWORD')
WHERE User = 'user-name' AND Host = 'localhost';
FLUSH PRIVILEGES;
SET PASSWORD FOR 'user-name'@'localhost' = PASSWORD('NEW_USER_PASSWORD');
FLUSH PRIVILEGES;
Убедитесь, что вы изменили user-name на имя пользователя, для которого хотите изменить пароль. Если пользователь подключается к серверу MySQL с другого хоста, измените localhost на удаленное имя хоста или IP-адрес.
В обоих случаях, если все пойдет хорошо, вы увидите следующий результат:
Query OK, 0 rows affected (0.00 sec)
Выйдите из командной строки MySQL, выполнив:
3. Подтвердите новый пароль.
Чтобы убедиться, что новый пароль применен правильно, введите:
mysql -u user-name -h localhost -p
Вам будет предложено ввести новый пароль пользователя. Введите его, и вы войдете на свой сервер MySQL.
Выводы
В этом руководстве вы узнали, как изменить пароль пользователя MySQL или MariaDB. Убедитесь, что новый пароль надежный и надежный, и храните его в надежном месте.
Чтобы узнать больше о том, как использовать оболочку MySQL для выполнения различных административных операций, вы можете ознакомиться с нашим руководством по управлению учетными записями пользователей и базами данных MySQL .
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Как изменить пароль пользователя MySQL
Одной из важных операций при работе с пользователями в СУБД MySQL является смена пароля пользователя. Как правило изменить пароль пользователя может только суперпользователь с именем root. Однако если обычный пользователь наделен полномочиями на смену пароля то он также может это сделать.
В данной статье будет рассмотрено как изменить пароль пользователя MySQL в операционной системе Ubuntu 20.04.
Как сменить пароль пользователя MySQL
Для смены пароля пользователя в MySQL присутствует несколько способов, в частности, это смена пароля при помощи команды SET PASSWORD или ALTER USER. Далее в статье будут рассмотрены все 2 способа.
Шаг 1. Как узнать версию MySQL
На данный момент (Февраль 2022 года) MySQL поддерживает две основные версии. Первая это устаревшая, но все еще поддерживая версия 5.7 и последняя актуальная версия 8.0. Для того чтобы узнать используемую версию необходимо выполнить следующую команду в терминале:
В данном случае используется версия 8.0.28. Инструкция ALTER USER доступна только в современных версиях MySQL. Если у вас версия 5.x.x. то в ней следует использовать SET PASSWORD. В более новых версиях можно применять обе инструкции.
Шаг 2. Вход в консоль MySQL
Для того чтобы попасть в консоль MySQL необходимо авторизоваться при помощи логина и пароля. Если на сервере уже зарегистрирован необходимый пользователь, то вход необходимо выполнять от имени этого пользователя. Если MySQL используется впервые после установки, то входить необходимо при помощи пользователя root. Команда входа под пользователем root выглядит следующим образом (где вместо пользователя root можно использовать имя необходимого пользователя):
Далее программа запросит пароль. В целях безопасности пароль не отображается в терминале. После ввода пароля необходимо нажать на клавишу Enter. После этого отобразится интерфейс консольного клиента MySQL, где можно использовать SQL команды.
Шаг 3. Просмотр хостов пользователя
В MySQL у каждой учетной записи есть свой хост, к которому данная учетная запись привязана. Есть 3 основных типа хостов в MySQL: localhost, % и IP адрес/доменное имя.
Тип записи localhost означает что под учетной записью можно входить только локально без возможности удаленного подключения, символ % (процент) означает что использовать такую учетную запись можно с любых хостов (в том числе и удаленных), IP адрес/доменное имя означает что использовать учетную запись можно только на выбранном доменном имени/IP адресе. Для того чтобы узнать тип хоста учетной записи необходимо выполнить следующий SQL запрос:
SELECT user, host FROM mysql.user;
На данном снимке экрана видно, что для пользователя alex используется хост %. Соответственно, этот хост и надо использовать при смене пароля. Пользователи в MySQL и вся информация о пользователях хранятся в базе данных mysql в таблице user.
Шаг 4. Смена пароля пользователя при помощи SET PASSWORD
Если требуется изменить пароль для пользователя root воспользуйтесь статьей Сброс пароля root в MySQL. Сменить пароль пользователя MySQL можно при помощи команды SET PASSWORD. Для того чтобы сменить пароль для пользователя alex с хостом % на somepassword666 выполните такую команду:
SET PASSWORD FOR ‘alex’@’%’ = ‘somepassword666’;
Шаг 5. Смена пароля пользователя при помощи ALTER USER
Также установить пароль пользователя можно при помощи команды ALTER USER. Для того чтобы поменять пароль для пользователя alex с хостом % на anotherpassword666 выполните SQL запрос:
ALTER USER ‘alex’@’%’ IDENTIFIED BY ‘anotherpassword666’;
Обратите внимание что имя пользователя и хост пользователя заключены в одинарные кавычки, без этих кавычек MySQL не сможет распознать строку.
Шаг 6. Сброс кэша привилегий
Вне зависимости от того какая команда была выполнена для смены пароля, после изменения пароля необходимо сбросить кэш привилегий. Сделать это можно, выполнив команду:
Шаг 7. Проверка нового пароля
После того как пароль был изменен и кэш привилегий сброшен, необходимо проверить вход от имени пользователя чей пароль был изменен. Для этого необходимо выйти из оболочки MySQL выполнив команду exit:
Далее необходимо войти в оболочку MySQL под необходимым пользователем ведя его новый пароль. Для примера войдем под пользователем alex, чей пароль был изменен ранее:
Если после ввода пароля появилось приглашение к вводу MySQL, то это означает что пароль был успешно обновлен.
Выводы
Теперь вы знаете как выполняется смена пароля пользователя MySQL. Изменить пароль можно несколькими способами. Оба способа являются простыми и быстрыми. А каким способом предпочитаете пользоваться вы? Поделитесь об этом в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.