Я только что установил 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-networking &
. Впоследствии я посмотрел на 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/unable-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
(и без информации о порте).
Есть у кого-нибудь подсказка, что может быть не так?
Не уверен, в чем проблема, но я всегда бегаю mysql_secure_installation
после установки, чтобы обезопасить конфигурацию базы данных и навести порядок. Вы пробовали это?