Нет баз данных в > MySQL

После того, как я обновил Ubuntu с 14.4 до 16.4 в Digital Ocean, мои базы данных не отображаются, когда я запускаю базы данных команды show; Он показывает только следующее: тест information_schema

Если я зайду в / var / lib / mysql, мои файлы базы данных будут там.

Я не уверен, что у него есть что-то с файлом /etc/mysql/my.cnf, и нужно ли мне добавить к нему информацию, в настоящее время это выглядит так:

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
# 
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

#
# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

, если я запускаю Следующие команды я получил этот вывод

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)

mysql> SELECT USER(),CURRENT_USER();
+----------------+----------------+
| USER()         | CURRENT_USER() |
+----------------+----------------+
| root@localhost | root@localhost |
+----------------+----------------+
1 row in set (0.00 sec)

mysql> SHOW GRANTS;
+--------------------------------------------------------------+
| Grants for root@localhost                                    |
+--------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'localhost'                     |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
+--------------------------------------------------------------+
2 rows in set (0.00 sec)
1
задан 30 August 2018 в 14:38

1 ответ

Итак, проблема была с привилегиями пользователя root, я просто остановил сервер MySQL и затем перезапустил его с помощью

sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking &

, после чего я подключился к серверу MySQL с помощью mysql клиент

shell> mysql

затем я предоставляю все привилегии пользователю root

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

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

Спасибо всем за помощь.

0
ответ дан 30 August 2018 в 14:38

Другие вопросы по тегам:

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