Создание пользователей mysql/mariadb и предоставление прав доступа

Установка MySQL в Kali Linux

Если вы уже работали с производными Debian (Linux Mint, Ubuntu), то в них присутствуют два пакета:

  • mysql-server — сервер MySQL
  • mysql-client — клиент MySQL

По умолчанию MySQL уже предустановлена в Kali Linux, но если у вас минимальная сборка, то вам может понадобиться установить СУБД вручную. Если вы попытаетесь установить пакет mysql-server, то получите следующую ошибку:

Пакет mysql-server недоступен, но упомянут в списке зависимостей другого
пакета. Это может означать, что пакет отсутствует, устарел или
доступен из источников, не упомянутых в sources.list

E: Для пакета «mysql-server» не найден кандидат на установку

Дело в том, что в Kali Linux (и видимо в свежих Debian, а также во всех её производных) этот пакет называется по-другому:

  • default-mysql-server (исполнимые файлы СУБД и настройка системной базы данных)
  • default-mysql-server-core (только исполнимые файлы СУБД)

Поэтому для установки MySQL используйте следующую команду:

sudo apt install default-mysql-server

Восстановление новой базы данных

1. Если нужно восстановить БД MySQL как новую, порядок действий будет отличаться. Сначала нужно создать базу данных, с тем же названием, как и на сервере.

Пример:

mysql> CREATE DATABASE customers_db;

2. Далее следует загрузить файл дампа SQL с помощью команды «mysql»:

$ mysql -u  -p  <  /(Путь к файлу)/ 

Пример:

$ mysql -u root -pSeCrEt customers_db < /(Путь к файлу)/customers_db_backup.sql

3. В случае, когда дамп был сделан до того, поможет следующая команда:

$ gunzip <  | mysql -u  -p 

Пример:

$ gunzip < customers_db_backup.sql.gz | mysql -u root -pSeCrEt customers_db

Следовательно, этими командами можно осуществить восстановление базы данных MySQL без особых трудностей.

Включение и отключение аутентификации по unix_socket

Переключиться на аутентификацию по паролю можно следующим SQL запросом:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'ПАРОЛЬ';

Обратите внимание, что вам нужно ввести ПАРОЛЬ.

Чтобы переключиться на аутентификацию по unix_socket выполните следующий SQL запрос:

ALTER USER 'root'@'localhost' IDENTIFIED VIA unix_socket;

Проверим:

SELECT plugin from mysql.user where User='root';

Если выведено mysql_native_password, то это означает, что используется вход по паролю.

На самом деле, аутентификацию по unix_socket можно сочетать с аутентификацией по паролю, но я не буду на этом останавливаться.

5 последних уроков рубрики «Разное»

  • Выбрать хороший хостинг для своего сайта достаточно сложная задача. Особенно сейчас, когда на рынке услуг хостинга действует несколько сотен игроков с очень привлекательными предложениями. Хорошим вариантом является лидер рейтинга Хостинг Ниндзя — Макхост.

  • Как разместить свой сайт на хостинге? Правильно выбранный хороший хостинг — это будущее Ваших сайтов

    Проект готов, Все проверено на локальном сервере OpenServer и можно переносить сайт на хостинг. Вот только какую компанию выбрать? Предлагаю рассмотреть хостинг fornex.com. Отличное место для твоего проекта с перспективами бурного роста.

  • Создание вебсайта — процесс трудоёмкий, требующий слаженного взаимодействия между заказчиком и исполнителем, а также между всеми членами коллектива, вовлечёнными в проект. И в этом очень хорошее подспорье окажет онлайн платформа Wrike.

  • Подборка из нескольких десятков ресурсов для создания мокапов и прототипов.

Подключение к MySQL

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

mysql -u ПОЛЬЗОВАТЕЛЬ -p -h ХОСТ

Все три опции являются необязательными.

Если пропущена опция -u, то в качестве имени пользователя MySQL будет использоваться текущее имя пользователя в ОС.

Опция -p означает, что выполняется вход с паролем. После этой опции не надо писать пароль — он будет запрошен в приглашении командной строки.

Если не указать опцию -h, то будет сделана попытка подключения к локальному серверу.

Попытка подключения, когда не установлен пароль пользователя:

mysql -u root

Это вызовет ошибку:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Суть проблемы в том, что по умолчанию используется аутентификация unix_socket, то есть когда имя пользователя ОС совпадает с именем пользователя в MySQL/MariaDB, то пароль вовсе не нужно вводить. Но другой пользователи не может войти от имени другого пользователя, поэтому, чтобы войти как root, нужно использовать sudo. Подробности смотрите в статье «Аутентификация по паролю и unix_socket в MySQL и MariaDB».

Можно выбрать один из вариантов:

1. Всегда использовать sudo:

mysql -u root

2. Внести изменения в настройки MySQL, чтобы к СУБД могли подключаться и обычные пользователи.

3. Создать нового пользователя MySQL. Если это будет пользователь с таким же именем как ваше имя в ОС, то тогда можно использовать аутентификацию по unix_socket и не вводить пароль при подключении. Либо можно выбрать аутентификацию по паролю и использовать любое имя.

Для получения доступа к базе данных MariaDB обычному пользователю без использования sudo привилегий (это также установит пароль пользователя root), зайдите в приглашение командной строки MySQL

sudo mysql

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

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'ПАРОЛЬ';
exit

Обратите внимание, что вам нужно ввести ПАРОЛЬ.

Затем попробуйте войти в базу данных без sudo, как показано ниже.

mysql -u root -p

MYSQL 8.0+ Как забыть или изменить пароль

y http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>le=»margin-bottom:5px;»>Теги:  Принцип компиляции

MYSQL был установлен давно. Теперь, поскольку мне нужно использовать MYSQL, но я забыл пароль, я поискал его в Интернете в час ночи. Большинство методов в Интернете — это добавление –skip-grant-tables в My.ini или My_default.ini Метод достижения пропустить пароль Mysql для подключения к базе данных и изменить пароль. Ни один из этих методов у меня не работает. Наконец, объединив два блога, я нашелнадежныйМетод записывается на тот случай, если вы забудете пароль позже.

Измени пароль

Запомните исходный парольВ случае изменения нового пароля: После входа в базу данных введите

как показано на картинке:

Измените пароль пользователя root @ localhost на admin:

Шаг 1. Отключите службу mysql.

  1. Откройте cmd от имени администратора, переключите каталог с диска C по умолчанию на каталог установки mysqld.exe, мой каталог установки по умолчанию: C: \ Program Files \ MySQL \ MySQL Server 8.0 \ bin
  1. cmd input команда: net stop mysql, обязательно закройте службу mysql

Шаг 2. Пропустите проверку пароля Mysql

После закрытия службы Mysql продолжайте работу в каталоге C: \ Program Files \ MySQL \ MySQL Server 8.0 \ bin. ввод

После ввода этой строки кода я успешно пропустил вход в систему с паролем Mysql

Шаг 3. Введите Mysql без пароля

Затем откройте cmd.exe, запущенный в режиме администратора, войдите в каталог bin в mysql, войдите в MySQL без пароля учетной записи, а затем сбросьте пароль пользователя root системы баз данных на admin.

  1. Введите следующую командную строку, чтобы войти в MySQL без пароля учетной записи.
  1. Обновите системные разрешения, введите
  1. Сбросьте пароль, установите пароль для root @ localhost = «новый пароль»; В качестве примера возьмем установку нового пароля admin, введите

Наконец-то вы закончили, успешно сбросили пароль!

Ссылка на ссылку

  1. https://blog.csdn.net/qq_43342301/article/details/91288891
  2. https://www.cnblogs.com/Lints/p/11506902.html

Интеллектуальная рекомендация

1. Для реальных сигналов (для понимания): A (ω) является соотношением амплитуды выходного сигнала и амплитуды входного сигнала, называемого частотой амплитуды. Φ (ω) — это разница межд…

Один. вести Многие люди задавали некоторые вопросы о создании проекта Flex + LCDS (FDS) в сообщениях и группах. Из-за операции ее трудно четко объяснить, поэтому я написал простой учебник (я обещал эт…

package com.example.phonehttp; import android.os.Bundle; import android.os.Handler; import android.app.Activity; import android.widget.ScrollView; import android.widget.TextView; public class MainActi…

Он предназначен для реализации подкласса того же родительского класса с родительским классом. Полиморфизм Один и тот же ссылочный тип использует разные экземпляры для выполнения разных операций; Идея …

тема: Объедините два упорядоченных слоя в новый заказанный список и возврат. Новый список состоит из всех узлов двух связанных списков, данных сплавным. Пример: Анализ: два связанных списка состоит в …

Вам также может понравиться

D. Самая ценная строка Пример ввода 2 2 aa aaa 2 b c Образец вывода aaa c На самом деле, будучи задетым этим вопросом, вы должны быть осторожны. После инвертирования строки, если две строки имеют один…

Given a 2D integer matrix M representing the gray scale of an image, you need to design a smoother to make the gray scale of each cell becomes the average gray scale (rounding down) of all the 8 surro…

calc () может быть очень незнакомым для всех, и трудно поверить, что calc () является частью CSS. Поскольку он выглядит как функция, почему он появляется в CSS, поскольку это функция? Этот момент такж…

Основываясь на дереве регрессии, сформированном CART, а также на предварительной и последующей обрезке дерева, код выглядит следующим образом:…

Откат Обновление в режиме онлайн с версии Centos (CentOS Linux версии 7.3.1611 (Core) до CentOS Linux версии 7.5.1804 (Core)) # ошибка соединения yum-ssh после обновления yexpected key exchange group …

Возможные ошибки

1. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

Причина: в новых версиях по умолчанию активированы политики на проверку сложности пароля. Их список можно посмотреть командой:

> SHOW VARIABLES LIKE ‘validate_password%’;

Вывод команды будет, примерно, следующим:

+—————————————+———+
| Variable_name | Value |
+—————————————+———+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+—————————————+———+

* где:

  • validate_password_check_user_name — пароль не должен совпадать с именем пользователя.
  • validate_password_dictionary_file — использовать специальный файл со словарем запрещенных паролей.
  • validate_password_length — минимальная длина пароля.
  • validate_password_mixed_case_count — сколько, как минимум, должно быть символов в малой и большой раскладках.
  • validate_password_number_count — какое минимальное количество цифр использовать в пароле.
  • validate_password_policy — позволяет задать определенный набор правил. Доступны значения LOW (или 0), MEDIUM (1), STRONG (2).
  • validate_password_special_char_count — минимальное количество специальных символов (например, # или !).

Решение:

  1. Привести пароль в соответствие требованиям политик.
  2. Отключить политику, которая не позволяет использовать желаемый пароль. Например, чтобы отключить требование использовать цифры вводим:

> SET GLOBAL validate_password_number_count = 0;

2. ERROR 1728 (HY000): Cannot load from mysql.tables_priv. The table is probably corrupted

Причина: система считает, что таблица tables_priv в базе mysql неисправна.

Решение: чаще всего, ошибка возникает при переносе баз с одного сервера в другой. Если версии СУБД разные, таблица tables_priv может работать со сбоями. Для исправления необходимо выполнить команду mysql_upgrade — она проверяет все таблицы на совместимость с текущей версией MySQL/MariaDB и вносит исправления. Применение команды:

mysql_upgrade -u root -p

Другие примеры

Рассмотрим часто встречаемые операции по работе с пользователями сервера баз данных.

1. Особые права

Предоставление особых прав пользователю:

> GRANT SELECT, UPDATE ON base1.* TO ‘dbuser’@’localhost’ IDENTIFIED BY ‘password’;

* права на выборку и обновление данных во всех таблицах базы base1 для пользователя dbuser
** список всех возможных прав: all privileges, alter, create, create temporary tables, delete, drop, execute, file, index, insert, lock tables, process, references, reload, replication client, replication slave, select, show databases, shutdown, super, update, usage

2. Удаленное подключение

Разрешение на удаленное подключение и использование базы MySQL:

> GRANT ALL PRIVILEGES ON *.* TO ‘dbuser’@’192.168.0.55’ IDENTIFIED BY ‘password’;

* предоставит права пользователю dbuser, который будет подключаться с компьютера с IP-адресом 192.168.0.55.

Мы можем сделать менее жесткое ограничение, разрешив доступ из подсети (особенно удобно при использовании динамических адресов):

> GRANT ALL PRIVILEGES ON *.* TO ‘dbuser’@’192.168.0.%’ IDENTIFIED BY ‘password’;

* в данном примере мы разрешим подключение для любого узла из сети 192.168.0.0/24.

Или мы можем, вовсе, разрешить водключение с любого хоста (не безопасно):

> GRANT ALL PRIVILEGES ON *.* TO ‘dbuser’@’%’ IDENTIFIED BY ‘password’;

3. Права на резервное копирование

Создание учетной записи MySQL с правами создания резервных копий:

> GRANT SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER, LOCK TABLES ON *.* TO ‘backup’@’localhost’ IDENTIFIED BY ‘backup’;

4. Права доступа к определенной таблице

По сути, это такое же предоставление прав, но с указанием конкретной таблицы после базы:

> GRANT ALL PRIVILEGES ON base1.table1 TO ‘dbuser’@’localhost’ IDENTIFIED BY ‘password’;

* в данном примере предоставлены все права на таблицу table1 в базе base1.

5. Удаление пользователя

Нам может также понадобиться удалить ранее созданного пользователя. Это делается в два этапа:

> REVOKE ALL PRIVILEGES, GRANT OPTION FROM ‘dbuser’@’localhost’;

> DROP USER ‘dbuser’@’localhost’;

* в данном примере мы первой командой отняли все права у пользователя dbuser (localhost) и второй — удалили его.

6. Права на создание других пользователей

Чтобы наш пользователь мог создавать других пользоватлей, задаем права:

GRANT CREATE USER ON *.* TO ‘creator’@’localhost’;

* в данном примере мы даем права учетной записи creator, которая может подключаться к серверу с локального хоста.

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

GRANT CREATE USER ON *.* TO ‘creator’@’localhost’ WITH GRANT OPTION;

* обратите внимание, что мы просто добавили WITH GRANT OPTION

Подключение через панель управления TimeWeb

Чтобы подключиться удаленно к MySQL, необходимо для начала открыть сайт хостинга и авторизоваться в личном кабинете. В панели управления следует выбрать раздел «Базы данных MySQL», через него и будем проводить операции. В новом открывшемся окне находим ссылку «Добавить доступ» напротив того сервера, к которому планируется подключиться. Для разрешения доступа к подсети /24 меняем последний актет IP-адреса на знак %.

При установлении соединения используем имя сервера или его IP-адрес. Данная информация доступна на главной странице в разделе «Информация о сервере». Порт указываем 3306, имя пользователя будет тем же, что и название базы данных. Вводим пароль и устанавливаем соединение.

phpMyAdmin

phpMyAdmin – программное средство, предоставляющее веб-интерфейс для работы с сервером MySQL. Подключиться к базе можно, открыв раздел «Базы данных MySQL» в панели управления хостингом. Находим на странице ссылку «phpMyAdmin» и жмем по ней для подключения. Если она недоступна, значит, пользователем был превышен лимит доступных БД. Увеличить его можно сменой тарифа.

Входим в данный раздел, вбиваем все данные и подключаемся.

Подключение

Итак, давайте начнём с подключения к MySQL при помощи команды:

mysql -u username -p

Вместо username введите имя существующего в вашей инсталляции MySQL пользователя.

Теперь, находясь в оболочке mysql-клиента, можно увидеть список доступных БД при помощи команды:

SHOW DATABASES;

Обратите на точку с запятой в конце. Она сообщает MySQL о том, что команда завершена. Если строку не завершить этим символом, то после нажатия Enter MySQL будет ожидать ввода продолжения команды в новой строке. Такое поведение MySQL часто оказывается полезным при вводе нескольких команд за один раз.

Также имейте ввиду, что MySQL хранит историю команд. Нажмите стрелку вверх и вы увидите введённую вами ранее команду.

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

USE databasename;

заменив databasename на имя нужной вам базы данных. Нужной вам базы данных не существует и вам необходимо её создать? Нет проблем!

Как проверить, какой метод аутентификации используется

Для просмотра используемого метода аутентификации можно использовать следующий SQL запрос:

select * from mysql.global_priv where User='root';

Или такую, для большей наглядности вывода:

SELECT CONCAT(user, '@', host, ' => ', JSON_DETAILED(priv)) FROM mysql.global_priv where user='root';

Можно увидеть, что в качестве плагина установлены mysql_native_password и unix_socket:

{
    "access": 18446744073709551615,
    "plugin": "mysql_native_password",
    "authentication_string": "invalid",
    "auth_or": 
    
} 

При такой конфигурации, у меня работала только аутентификация по unix_socket.

Создайте SSH-туннель в Linux и macOS

Клиент предустановлен в большинстве систем на базе Linux и Unix.

Если вы используете Linux или macOS в качестве операционной системы, вы можете создать туннель SSH, используя следующую команду:

Используются следующие параметры:

  • — Указывает SSH не выполнять удаленную команду.
  • — Создает переадресацию локального порта. Локальный порт ( ), то IP — назначения ( ) и удаленный порт ( ) разделены двоеточием ( ).
  • — удаленный пользователь SSH и IP-адрес сервера.
  • Чтобы запустить команду в фоновом режиме, используйте параметр .
  • Если SSH-сервер прослушивает порт, отличный от 22 (по умолчанию), укажите порт с помощью параметра .

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

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

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

Где — это удаленный пользователь MySQL, имеющий права доступа к базе данных.

При появлении запроса введите пароль пользователя MySQL.

Чтобы завершить туннель SSH, введите в консоли, на которой работает клиент ssh.

Причина возникновения ошибки 1045

Как ни банально, но единственная причина это неправильная комбинация пользователя и пароля

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

Синтаксически записывается как ‘имя пользователя’@’имя хоста’.

Таким образом, причина возникновения MySQL error 1045 — неправильная комбинация трех параметров: имени пользователя, хоста и пароля.

В качестве имени хоста могут выступать ip адреса, доменные имена, ключевые слова (например, localhost для обозначения локальной машины) и групповые символы (например, % для обозначения любого компьютера кроме локального). Подробный синтаксис смотрите в документации

Примеры.
1) Если вы не указали в явном виде имя хоста

GRANT ALL ON publications.* TO ‘ODBC’ IDENTIFIED BY ‘newpass’;
ERROR 1045 (28000): Access denied for user ‘ODBC’@’localhost’ (using password: YES)

2) Другой первопричиной ошибки mysql 1045 может быть неправильное использование кавычек.

CREATE USER ‘new_user@localhost’ IDENTIFIED BY ‘mypass’; — будет создан пользователь ‘new_user@localhost’@’%’

3) Неочевидный вариант. IP адрес 127.0.0.1 в имени хоста соответствует ключевому слову localhost. С одной стороны, root@localhost и ‘root’@’127.0.0.1’ это синонимы, с другой, можно создать двух пользователей с разными паролями. И при подключении будет выбран тот, который распологается в таблице привелегий (mysql.user) раньше.

4) Аккаунт с пустым именем пользователя трактуется сервером MySQL как анонимный, т.е. позволяет подключаться пользователю с произвольным именем или без указания имени.
Например, вы создали пользователя »@localhost с пустым паролем, чтобы каждый мог подключиться к базе. Однако, если при подключении вы укажите пароль отличный от пустого, то получите ошибку 1045. Как говорилось ранее, нужно совпадение трех параметров: имени пользователя, хоста и пароля, а пароль в данном случае не совпадает с тем, что в базе.

Администрирование

Восстановление забытого пароля для root’a

  1. Остановите :

    sudo service mysql stop
  2. Запустите с параметрами :

    sudo mysqld --skip-grant-tables --user=root

    Если команда не сработает, добавьте строку «» в секцию «» файла . Затем выполните . После выполнения операций удалите эту строку.

  3. Подключитесь к MySQL-серверу командой:

    mysql -u root
  4. Обновите пароль для root’a:

    UPDATE mysql.user SET authentication_string=PASSWORD('<новый пароль>'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';    
    FLUSH PRIVILEGES;

    Для MySQL версий < 5.7:

    UPDATE mysql.user SET Password=PASSWORD('<новый пароль>') WHERE User='root';
    FLUSH PRIVILEGES;
  5. Перезапустите демона:

    sudo service mysql restart

Теперь можете проверить вход под root с новым паролем:

mysql -u root -p

Резервное копирование

Для создания резервных копий существует специальная утилита . Основные ее параметры приведены в таблице:

Параметр Описание Пример
Пользователь, от лица которого будет производится дамп баз данных.
Пароль пользователя. Пароль необязательно указывать, достаточно упомянуть этот параметр для того, чтобы утилита знала что подключение требует пароля.
Хост, на котором расположена база данных.
Создать бекап всех баз данных.
Базы данных, которые нужно забэкапить.
Таблицы, которые нужно забэкапить. Перекрывает действие ключа -B
Создать бекап структуры таблиц. Содержимое таблиц скопировано не будет.
Не использовать многострочные INSERT-записи при создании дампа.
Создавать дамп только тех строк, которые попадают под условие.

Отключение и включение автозагрузки сервиса

Начиная с версии Ubuntu 15.04 отключение и включение сервисов возможно одной командой, без редактирования конфигов. В примерах команд ниже слово «SERVICE» следует заменить на «mysql».

Узнать стоит ли сервис в автозагрузке:

$ systemctl is-enabled SERVICE

Убрать сервис из автозагрузки в Ubuntu-16.04:

$ sudo systemctl disable SERVICE

Добавить сервис в автозагрузку в Ubuntu-16.04:

$ sudo systemctl enable SERVICE

Шаг 4 — Смена пароля рута

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

Открываем новое окно командной строки, можно без прав администратора.

Опять переходим в нужную папку

cd C:\Server\bin\mysql-8.0\bin\

И подключаемся к серверу MySQL/MariaDB

.\mysql -u root

Вы сразу же увидите приглашение оболочки базы данных. Приглашение командной строки MySQL:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.19 MySQL Community Server - GPL

Copyright (c) 2000, 2020, 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.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

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

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

FLUSH PRIVILEGES;

Теперь действительно мы можем поменять пароль рута.

Для MySQL 5.7.6 и новее, а также для MariaDB 10.1.20 и новее используйте следующую команду:

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

Для MySQL 5.7.5 и старее, а также для MariaDB 10.1.20 и старее используйте:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('новый_пароль');

Не забудьте поменять новый_пароль на выбранный вами новый пароль.

Примечание: если команда ALTER USER не работает, то это обычно является признаком более серьёзной проблемы. Тем не менее вместо этой вы можете попробовать UPDATE … SET для сброса root пароля:

UPDATE mysql.user SET authentication_string = PASSWORD('новый_пароль') WHERE User = 'root' AND Host = 'localhost';

После этого не забудьте перегрузить таблицы привилегий:

FLUSH PRIVILEGES;

В любом случае вы должны видеть подтверждение, что команда успешно выполнена. Вывод:

Query OK, 0 rows affected (0.02 sec)

Выходим из сессии:

exit;

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: