---
title: "Смена пароля root для MySQL, развернутой на сервере"
description: "Смена пароля root для MySQL, развернутой на сервере. Документация и инструкции по использованию и настройке облачных серверов Timeweb Cloud."
---

> Полный индекс документации для ИИ-агентов: [llms.txt](https://timeweb.cloud/llms.txt).

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

## Смена пароля, если текущий пароль утерян

1.  Подключитесь к серверу [по SSH](https://timeweb.cloud/docs/unix-guides/ssh).
2.  Остановите службу MySQL:

```shell
/etc/init.d/mysql stop
```

3.  Отредактируйте файл `mysqld.cnf`, чтобы запустить службу без проверки прав доступа. Для этого:

**3.1.** Откройте файл в редакторе:

```shell
nano /etc/mysql/mysql.conf.d/mysqld.cnf
```

**3.2.** В секцию `[mysqld]` добавьте следующую строку:

```shell
skip-grant-tables
```

Должно получиться примерно так:

![Mysqld](https://content.timeweb.com/assets/a9532fa4-464a-49f4-bcd8-f1efe1d346db?width=439&height=238)

**3.3.** Сохраните изменения (в `nano` это выполняется комбинацией Ctrl O -> Enter -> Ctrl X, либо Ctrl X -> Y -> Enter).

4.  Перезапустите mysql:

```shell
service mysql restart
```

5.  Снова откройте файл `mysqld.cnf`:

```shell
nano /etc/mysql/mysql.conf.d/mysqld.cnf
```

И **удалите** добавленную строку. Сохраните изменения. 

6.  Подключитесь к MySQL как root без пароля:

```shell
mysql
```

7.  Выберите активную БД:

```shell
use mysql;
```

MySQL 5

8.  Обновите пароль:

```shell
UPDATE user SET authentication_string = PASSWORD('ВАШ_НОВЫЙ_ПАРОЛЬ') WHERE User = 'root';
```

9.  Примените изменения:

```shell
FLUSH PRIVILEGES;
```

10.  Выйдите из mysql командой **\\q**.
11.  Перезапустите службу в обычном режиме:

```shell
/etc/init.d/mysql start
```

12.  Теперь проверьте, что пароль успешно изменен, подключившись под root с новым паролем. Для этого выполните:

```shell
mysql -u root -p
```

После чего введите ваш новый пароль. 

MySQL 8

8.  Перезагрузите таблицы привилегий:

```shell
FLUSH PRIVILEGES;
```

9.  Обновите пароль:

```shell
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'ваш_новый_пароль';
```

10.  Примените изменения:

```shell
FLUSH PRIVILEGES;
```

11.  Выйдите из mysql командой **\\q**.
12.  Перезапустите службу в обычном режиме:

```shell
/etc/init.d/mysql start
```

13.  Теперь проверьте, что пароль успешно изменен, подключившись под root с новым паролем. Для этого выполните:

```shell
mysql -u root -p
```

После чего введите ваш новый пароль. 

## Смена пароля, если текущий пароль известен или не был установлен ранее

Если требуется изменить существующий root-пароль для MySQL либо установить его в случае, когда он не был задан в принципе (это актуально, например, при автоматической установке LAMP при создании сервера — root-пароль MySQL при этом не задается), это можно сделать следующим образом:

1.  Подключитесь к серверу [по SSH](https://timeweb.cloud/docs/unix-guides/ssh).
2.  Перейдите к управлению MySQL:

Если пароль root не задан, используйте команду:

```shell
mysql
```

Если пароль существует, используйте команду:

```shell
mysql -u root -p
```

После чего введите текущий пароль.

MySQL 5

3.  Выполните запрос ниже, заменив «пароль» на нужное вам значение:

```shell
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('пароль');
```

4.  Выйдите из консоли MySQL командой `\q`.
5.  Проверьте изменения, подключившись с новым паролем. Выполните команду:

```shell
mysql -u root -p
```

После чего введите ваш новый пароль.

MySQL 8

3.  Выполните запрос ниже, заменив «пароль» на нужное вам значение:

```
ALTER USER 'root'@'localhost' IDENTIFIED BY 'пароль';
```

4.  Примените изменения:

```sql
FLUSH PRIVILEGES;
```

5.  Выйдите из консоли MySQL командой `\q`.
6.  Проверьте изменения, подключившись с новым паролем. Выполните команду:

```shell
mysql -u root -p
```

После чего введите ваш новый пароль.
