
При администрировании серверов баз данных 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 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%' ORschema_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.
Если у вас есть вопросы, не стесняйтесь оставлять комментарии.
Связанные руководства
- Как установить MariaDB на CentOS 8
- Вывести список (показать) таблиц в базе данных MySQL
- Как настроить репликацию Master-Slave MySQL (MariaDB) в Debian 10
- Как подключиться к MySQL через SSH-туннель
- Как разрешить удаленные подключения к серверу базы данных MySQL
- Как удалить учетные записи пользователей MySQL
- Как установить MariaDB на Debian 10