ВОЙТИ
    opened image

    ​​​​​​​

     

    Сброс пароля root для MySQL или MariaDB в Ubuntu


    Сброс пароля root для MySQL или MariaDB может потребоваться в различных ситуациях: забытый пароль, необходимость изменить устаревший пароль или унаследованная система без известных учетных данных. В этом руководстве мы рассмотрим, как выполнить сброс пароля root в операционной системе Ubuntu, обеспечивая безопасность и целостность вашей базы данных.

     

    Предварительные требования

    • Права суперпользователя (root) или возможность использовать sudo.
    • Установленный MySQL или MariaDB сервер.
    • Доступ к терминалу на вашем сервере или рабочей станции.

     

    Остановка службы MySQL/MariaDB

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

    Для MySQL: sudo service mysql stop
    Для MariaDB: sudo service mariadb stop
    

    Проверьте, что служба остановлена:

    sudo service mysql status
    или
    sudo service mariadb status
    

    Запуск сервера в безопасном режиме

    Запустите сервер в безопасном режиме с опцией --skip-grant-tables, чтобы отключить проверку привилегий и паролей.

    sudo mysqld_safe --skip-grant-tables &
    

    Примечание: Символ & позволяет запустить процесс в фоновом режиме.

     

    Вход в консоль MySQL/MariaDB без пароля

    Теперь вы можете войти в консоль базы данных без пароля:

    mysql -u root
    

     

    Обновление пароля root

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

    Для MySQL 5.7 и выше:
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'новый_пароль';
    
    Для более ранних версий MySQL и MariaDB:
    UPDATE mysql.user SET authentication_string=PASSWORD('новый_пароль') WHERE User='root' AND Host='localhost';
    

    Важно: Замените 'новый_пароль' на ваш новый надежный пароль.

    Применение изменений

    FLUSH PRIVILEGES;
    

    Выход из консоли

    EXIT;
    

    Остановка безопасного режима сервера

    Найдите PID (идентификатор процесса) запущенного сервера и завершите его работу.

    sudo kill `sudo cat /var/run/mysqld/mysqld.pid`
    

     

    Перезапуск службы MySQL/MariaDB

    Для перезапуска службы используйте следующие команды:

    Для MySQL: sudo service mysql start
    Для MariaDB: sudo service mariadb start
    

     

    Проверка нового пароля

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

    mysql -u root -p
    

     

    Когда будет запрошен пароль, введите новый пароль.

     

    Дополнительные меры безопасности

     

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

     

    • Используйте mysql_secure_installation

    Этот встроенный скрипт поможет настроить базовые параметры безопасности:

     

    mysql_secure_installation
    

     

    • Создайте отдельных пользователей с минимальными привилегиями

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

     

    CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
    GRANT SELECT, INSERT, UPDATE ON database.* TO 'user'@'localhost';

     

    • Используйте ufw или другой брандмауэр для ограничения доступа к портам MySQL/MariaDB.

     

    ufw allow from your_ip_address to any port 3306

     

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

    • Обновите пароли для всех учетных записей root, если их несколько.
    • Ограничьте удаленный доступ к учетной записи root, редактируя файл конфигурации и устанавливая bind-address на 127.0.0.1.
    • Регулярно создавайте резервные копии ваших баз данных и настроек.

     

    Заключение

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