Невозможно сбросить пароль MariaDB

Я только что установил MariaDB на сервере Ubuntu 17.04, используя sudo apt install mariadb-server , и я просто не могу войти в систему.

~ / .my.cnf не существует. Пустой пароль с использованием mysql -u root -p не работал.

Итак, сначала я попробовал https://www.liberiangeek.net/2014/10/reset-root-password-mariadb-centos-7/ , поэтому я запустил mysql, используя sudo mysqld_safe --skip-grant-tables --skip-network & . После этого я посмотрел на SELECT Password FROM mysql.user , который был пуст (что кажется мне странным, потому что я не мог войти в систему с root и пустым паролем). После этого я запустил

UPDATE mysql.user SET password=PASSWORD("root") WHERE user='root';
flush privileges;

в консоли, чтобы изменить пароль. Хотя пароль был установлен на * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B , что кажется правильным, вход в систему был невозможен.

Впоследствии я попытался войти в mysql, используя sudo mysql -u root, как описано в ответе здесь https: // askubuntu. com / questions / 489098 / cannot-to-reset-root-password-of-mysql , но пароль по-прежнему * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B , поэтому не похоже, что пароль является главной проблемой .

Тем не менее, я не могу войти в систему. Кажется, что служба настроена правильно:

● mariadb.service - MariaDB database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2017-05-08 17:38:44 CEST; 13min ago
  Process: 10397 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 10394 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
  Process: 10276 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exit
  Process: 10272 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 10270 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
 Main PID: 10366 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 27 (limit: 4915)
   Memory: 105.6M
      CPU: 745ms
   CGroup: /system.slice/mariadb.service
           └─10366 /usr/sbin/mysqld

и процесс также выполняется на правом порту

sudo netstat -taupen | grep 10366
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      125        64559      10366/mysqld

, но я не могу войти в систему с помощью mysql -u root - p -P 3306 (и без информации о порте).

Есть ли у кого-нибудь подсказка, что может быть не так?

0
задан 8 May 2017 в 18:55
2 ответа

Не знаю, в чем проблема, но я всегда запускаю mysql_secure_installation после установки, чтобы обезопасить конфигурацию базы данных и навести порядок. Вы пробовали это?

0
ответ дан 5 December 2019 в 08:12

Да, он никогда не изменится, потому что "*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B" хэшируется как "root".

0
ответ дан 31 December 2020 в 16:25

Теги

Похожие вопросы