Как показать список всех баз данных в MySQL

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

В этом руководстве объясняется, как отобразить все базы данных на сервере MySQL или MariaDB через командную строку.

Показать базы данных MySQL

Самый распространенный способ получить список баз данных MySQL — это использовать клиент mysql для подключения к серверу MySQL и выполнить команду SHOW DATABASES .

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

mysql -u user -p
Если вы не установили пароль для своего пользователя MySQL, вы можете опустить переключатель -p .

Из оболочки MySQL выполните следующую команду:

SHOW DATABASES;

Команда напечатает список всех баз данных, для которых пользователю предоставлены какие-либо права . Результат будет примерно таким:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| opencart           |
+--------------------+
2 rows in set (0.00 sec)

Еще одна команда, которую вы можете использовать для SHOW SCHEMAS списка баз данных, — это SHOW SCHEMAS которая является синонимом команды SHOW DATABASES :

SHOW SCHEMAS;

Вывод будет таким же, как при использовании команды SHOW DATABASES :

+--------------------+
| Database           |
+--------------------+
| information_schema |
| opencart           |
+--------------------+
2 rows in set (0.00 sec)

Показать все базы данных MySQL

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

Войдите в систему как root-пользователь MySQL:

mysql -u user -p

Запустите команду SHOW DATABASES :

SHOW DATABASES;

Вы увидите список всех баз данных на сервере MySQL:

+--------------------+
|     Databases      |
+--------------------+
| information_schema |
| database_name      |
| mysql              |
| opencart           |
| wordpress          |
| performance_schema |
| sys                |
+--------------------+

7 rows in set (0.00 sec)

Фильтрация результата

Предложение LIKE можно использовать для фильтрации вывода команды SHOW DATABASES соответствии с определенным шаблоном.

SHOW DATABASES LIKE pattern;

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

SHOW DATABASES LIKE 'open%';
+--------------------+
| Database           |
+--------------------+
| opencart           |
+--------------------+
1 rows in set (0.00 sec)
Знак процента ( % ) означает ноль, один или несколько символов.

Если вы хотите выполнить более сложный поиск, вы запрашиваете таблицу schemata из базы данных information_schema которая содержит информацию обо всех базах данных.

Следующая инструкция предоставит вам список всех баз данных, которые начинаются с «open» или «word»:

SELECT schema_nameFROM information_schema.schemataWHERE schema_name LIKE 'open%' OR       schema_name LIKE 'word%';
+--------------------+
| Database           |
+--------------------+
| opencart           |
| wordpress          |
+--------------------+
2 rows in set (0.00 sec)

Показать базы данных MySQL из командной строки

Чтобы получить список баз данных без входа в оболочку MySQL, вы можете использовать либо команду mysql с параметром -e что означает выполнение, либо mysqlshow который отображает информацию о базах данных и таблицах.

Это особенно полезно, когда вы хотите работать со своими базами данных MySQL с помощью сценариев оболочки.

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

mysql -u user -p -e 'show databases;'
+--------------------+
| Database           |
+--------------------+
| information_schema |
| opencart           |
+--------------------+

Вот пример использования команды mysqlshow :

mysqlshow -u user -p

Вывод будет идентичен выводу предыдущей команды.

Если вы хотите отфильтровать вывод, вы можете использовать команду grep .

Выводы

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

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Оставьте комментарий