Как узнать название базы данных mysql
Перейти к содержимому

Как узнать название базы данных mysql

  • автор:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

mysql_db_name

Данный модуль устарел, начиная с версии PHP 5.5.0, и удалён в PHP 7.0.0. Используйте вместо него MySQLi или PDO_MySQL. Смотрите также инструкцию MySQL: выбор API. Альтернативы для данной функции:

  • Запрос: SELECT DATABASE()

Описание

Возвращает название базы данных из вызова к mysql_list_dbs() .

Список параметров

Дескриптор результата, полученный из вызова mysql_list_dbs() .

Индекс в результате.

Возвращаемые значения

Возвращает название базы данных в случае успешного выполнения, или false в случае ошибки. В случае возврата false используйте mysql_error() для определения природы ошибок.

Примеры

Пример #1 Пример использования mysql_db_name()

$link = mysql_connect ( ‘dbhost’ , ‘username’ , ‘password’ );
$db_list = mysql_list_dbs ( $link );

$i = 0 ;
$cnt = mysql_num_rows ( $db_list );
while ( $i < $cnt ) <
echo mysql_db_name ( $db_list , $i ) . «\n» ;
$i ++;
>
?>

Примечания

Замечание:

Для обратной совместимости может быть использован следующий устаревший псевдоним: mysql_dbname()

Как узнать название базы данных mysql

Как быть, если вы забыли имя базы или таблицы, или структуру какой-либо из таблиц (например имена столбцов)? В MySQL эта проблема решается при помощи нескольких команд, выводящих информацию о базе данных и содержащихся в ней таблицах.

Вы уже познакомились с командой SHOW DATABASES , выводящей список управляемых сервером баз данных. Определить, какая из них выбрана в данный момент, можно с помощью функции DATABASE() :

Если ни одна из баз не выбрана, результат будет пуст.

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

Узнать структуру таблицы можно при помощи команды DESCRIBE , которая выводит информацию о каждом из столбцов таблицы:

Field — имя столбца, Type — тип данных, к которому относится этот столбец, NULL указывает, может ли данный столбец содержать значения NULL , Key — является ли этот столбец индексным, и, наконец, Default указывает значение данного столбца по умолчанию.

Если для таблицы созданы индексы, информацию о них можно получить с помощью команды SHOW INDEX FROM tbl_name .

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

SHOW DATABASES (и прочие SHOW ) запросами не являются!

Одним из правильных решений (особенно если это учебно-зачётная задача) является запрос типа

Akina's user avatar

Вот пример с вашим _db .

Второй пример для того если _db в середине имени базы данных а не в конце.

Вот здесь подробно все описано.

Raz Galstyan's user avatar

SHOW DATABASES поддерживает like

SHOW DATABASES LIKE ‘%_db%’; Вот так нормально

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.3.3.43278

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *