MySql выбирает базу данных mysql через консоль и MySOFT

MySql выбирает базу данных mysql через консоль и MySOFT Хостинг

В процессе разработки иногда приходится выполнять часть операций вручную через командную строку. Данная статья содержит основные команды для взаимодействия с MySQL.

Подключение к MySQL

Для подключения к локальной БД с пользователем «root» без пароля достаточно прописать:

В примере выше не указывается ни пароль, ни хост. В таком виде она часто используется при разработке на сборках с единственным пользователем по умолчанию. К примеру, на OpenServer’e. Этого пользователя попросту лень менять :), но на продакшене, конечно, следует использовать отдельного пользователя с урезанными правами по отношению к root’у. В таких случаях при подключении необходимо указывать дополнительные параметры.

Подключение без указания конкретной БД:

Подключение к нужной БД сразу:

  • -u — имя пользователя;
  • -p — пароль, вводится после нажатия ENTER;

Для отключения от MySQL используется команда:

Или её синоним:

Работа с базами данных

В исходниках программы старайтесь указывать все операторы баз данных в верхнем регистре, а всё остальное — наименования баз данных, таблиц, столбцов и т.д., в нижнем. Это повышает читабельность запросов в вашем коде. Например:

Вывод списка имеющихся БД:

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

  • information_schema — хранилище метаданных о вашей базе данных, таких как наименование других баз данных, количестве столбцов, их таких и т.д.
  • performance_schema — быстрая версия «information_schema«.
  • mysql — еще одно хранилище служебной информации.

Выбор базы данных для работы:

После выбора базы данных все команды по работе с данными будут относиться к ней и приглашение командной строки тоже обновится.

Создание новой базы данных с кодировкой «utf8_general_ci» (это не совсем кодировка, это скорее способ сравнения символов):

new_database utf8_general_ci;

Удаление базы данных:

Работа с пользователями

При работе с разными проектами для каждого из них желательно создавать разных пользователей, так мы минимизируем возможные потери от взломов или плохо написанного кода. Создание пользователей состоит из двух этапов. Первый — добавление записи о пользователе в БД. Второй — наделение созданного пользователя полномочиями.

В приведенном примере пользователь будет иметь право подключаться с сервера «localhost». Если требуется дать пользователю право подключаться к базе данных с других хостов (удаленных), то вместо «localhost» необходимо указать символ процента — «%». Чтобы пользователь имел право подключаться и с «localhost» и с удаленных хостов, то необходимо создать две записи с «localhost» и с «%».

Читайте также:  Повышение производительности Битрикса: раскрыты основные настройки PHP

Обновление пароля пользователя:

Выделение привилегий пользователю:

Пример выше содержит два важных элемента. Первый — список привилегий, в данном случае была использована настройка «ALL PRIVILEGES». Она заменяет список всех привилегий, т.е. «SELECT», «CREATE», «INSERT», «UPDATE», «DELETE», «DROP» и так далее. Второй момент — список баз данных и таблиц на которые выдаются указанные привилегии. В примере выше указаны все базы данных и все таблицы — две звездочки(*.*).

Если вы указываете привилегии не через команду «GRANT» (т.е. вручную), то для вступления изменений в силу необходимо оповестить об этом MySQL вот так:

Вывод привилегий пользователя:

Сброс всех привилегий пользователя:

Работа с данными

Отображение списка таблиц:

Отображение структуры таблицы:

Операции с данными выглядят и работают также, как и в исходниках программ.

customer
id
name
age TINYINT
;

name address client ;

customer name age ;

customer age name ;

Экспорт и импорт дампа

Для создания дампа используется отдельная утилита — mysqldump. А импортировать дампы можно через утилиту mysqlimport или основным клиентом — mysql. У всех этих утилит множество настроек с которыми лучше ознакомиться в документации.

Экспорт всей базы данных:

Экспорт структуры базы данных (т.е. без данных):

Экспорт одной таблицы базы данных с данными:

Экспорт структуры одной таблицы базы данных (т.е. без данных):

Импорт базы данных через mysql:

Импорт базы данных через mysql с выводом результатов выполнения запросов:

Иногда бывает необходимо посмотреть запрос на создание выбранной таблицы прямо в консоли, делается это вот так:

Дампы на удаленных машинах

Экспорт дампа из удаленной БД на локальную машину:

Импорт дампа в БД на удаленной машине с локальной машины:

Другие команды

Вывод общей информации о базе данных:

Отображение списка выполняемых процессов:

Полезные ссылки

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

MySql выбирает базу данных mysql через консоль и MySOFT

Подготовка

У вас в системе должен быть установлен сервер MySQL или MariaDB.

Все команды выполняются от имени администратора (минимальная привилегия, необходимая для создания новой базы данных — CREATE) или с учетной записью root.

Чтобы получить доступ к оболочке MySQL, используйте команду:

mysql -u root -p

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

Создание базы данных MySQL

Создать новую базу данных MySQL так же просто, как запустить одну команду.

Чтобы создать новую базу данных MySQL или MariaDB, введите следующую команду, где database_name — это имя базы данных, которую вы хотите создать:

CREATE DATABASE database_name;

Мы должны получить следующий вывод:

Query OK, 1 row affected (0.00 sec)

Если вы попытаетесь создать базу данных, которая уже существует, вы увидите следующее сообщение об ошибке:

ERROR 1007 (HY000): Can’t create database ‘database_name’; database exists

Чтобы избежать ошибок, если база данных с тем же именем, которое вы пытаетесь создать, существует, используйте оператор IF NOT EXISTS:

Читайте также:  Хостинг для сайта: купить виртуальный Shared Web Hosting | Hostland

CREATE DATABASE IF NOT EXISTS database_name;

Получим следующий вывод:

Query OK, 1 row affected, 1 warning (0.00 sec)

В приведенном выше выводе Query OK означает, что запрос был успешным, а 1 предупреждение говорит нам, что база данных уже существует, и новая база данных не была создана. Учитывайте что в Linux базы данных MySQL и имена таблиц чувствительны к регистру.

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

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

Команда выше выведет список всех баз данных на сервере. Вывод должен быть похож на это:

Выбрать базу данных MySQL

При создании базы данных, новая база данных не выбирается для использования.

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

Получим такой вывод:

После выбора базы данных все последующие операции, такие как создание таблиц, выполняются с выбранной базой данных.

Каждый раз, когда вы хотите работать с базой данных, вы должны выбрать ее с помощью оператора USE.

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

mysql -u root -p database_name

Создание базы данных MySQL с помощью mysqladmin

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

Рекомендуем

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

Выберите базу данных MySQL из окна командной строки

Следующие примеры выбраны w3big базы данных:

После выполнения указанной выше команды, вы успешно выбраны w3big базы данных, база данных будет выполняться в w3big в последующих операциях.

Примечание: Все имена баз данных, имена таблиц, таблиц поля чувствительны к регистру. Таким образом, при использовании команды SQL необходимо ввести правильное имя.

Выберите базу данных MySQL с помощью PHP скрипт

PHP предоставляет функции mysql_select_db выбрать базу данных. После успешной реализации функции возвращает значение TRUE, в противном случае она возвращает FALSE.

Грамматика

bool mysql_select_db( db_name, connection );

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

Небольшая памятка по работе с сервером MySQL из командной строки.

Получить информацию об установленной версии MySQL

Для подключения к mysql в консоли наберите команду

  • h — хост c MySQL. Если подключаемся с локальной машины, параметр можно опустить
  • u — имя пользователя MySQL (root или другой пользователь MySQL)
  • p — пароль, который будет предложено ввести после нажатия enter

Приглашение командной строки изменится, это значит, сервер MySQL ждёт от вас команд.

Запросы должны оканчиваться точкой с запятой. Длинные запросы удобно разбивать enter-ом для перехода на новую строку, а после полного написания запроса поставить точку с запятой и выполнить его.

Для отключения от MySQL нужно написать exit или (в unix-системах) нажать комбинацию клавиш ctrl+с.

Для вывода всех баз данных на сервере используйте команду show databases.

Читайте также:  Как установить и использовать Traceroute в Linux

Выберите нужную базу данных командой use.

Теперь можно вводить запросы.

Чтобы подключиться к MySQL и сразу выбрать нужную базу

Полезные команды MySQL

Показать все таблицы выбранной базы данных в текущей БД.

Показать все таблицы базы данных db_name.

SHOW TABLES FROM db_name;

Показать список столбцов в таблице table_name в текущей БД

SHOW COLUMNS FROM table_name;

Показать список столбцов в таблице table_name из БД db_name

SHOW COLUMNS FROM table_name FROM db_name;

Вывести структуру нужной таблицы

Показать структуру таблицы, будет выведен sql-запрос на её создание через «CREATE TABLE».

SHOW CREATE TABLE table_name;

Вывести значения системных переменных.

Показать список выполняющихся в настоящий момент запросов.

Общая статистика MySQL.

Статистика по всем таблицам в базе db_name.

SHOW TABLE STATUS FROM db_name;

Что бы выполнять запросы к MySQL из консоли, не всегда требуется предварительно подключаться к mysql. Параметр -e позволяет исполнить команду, вывести результат на экран, после чего отключиться от сервера MySQL. Например, можно вывести список таблиц базы данных.

Управление базами данных

Создание базы данных из консоли сервера

Удаление базы данных из консоли сервера

Создание базы данных db_name из консоли MySQL

CREATE DATABASE db_name COLLATE utf8_general_ci;

Удаление базы данных db_name из консоли MySQL

DELETE DATABASE db_name;

Замена в поле одной подстроки на другую

UPDATE table SET field=replace(field,’original string’,’new string’);

Вывести список пользователей

Создать нового пользователя

Чтобы создаваемый пользователь смог подключаться к серверу MySQL с любого IP адреса или хоста (за исключением localhost), можно использовать символ процента, вот так

Чтобы разрешрешить пользователю подключаться вообще со всех хостов, придётся создать для него две учётные записи.

Чтобы изменить права пользователю, иногда удобно сначала сбросить все права

А затем установить нужные с помощью GRANT, как было показано выше.

Сделать из пользователя суперпользователя и дать полный доступ ко всем БД на сервере

Изменить пароль пользователя в консоли MySQL

Исправление и оптимизация баз данных в MySQL

Чтобы исправить ошибки в поврежденной таблице, в консоли MySQL выполните:

Если же в БД много поврежденных таблиц можно воспользоваться командой mysqlcheck.

Проверить db_name на ошибки.

$ mysqlcheck -p db_name

Восстановление и оптимизация всех БД

$ mysqlcheck -Aor -p

  • p – использовать пароль
  • -A, —all-databases – проверять все базы данных
  • -o, —optimize – оптимизировать
  • -r, —repair – восстанавливать повреждённые
  • —auto-repair – автоматическое восстановление

Бэкап MySQL из командной строки

Экспорт базы MySQL

Дамп нескольких баз

Дамп всех баз на сервере

Дамп только структуры базы, без данных

Дамп структуры одной таблицы mysql, без данных:

Развернуть базу данных MySQL из дампа

Клонирование таблиц

Скопировать структуру и ключи таблицы, без копирования данных.

CREATE TABLE NEW_TableName LIKE OLD_TableName

Клонировать таблицы базы данных со всеми данными.

CREATE TABLE NEW_TableNameSELECT *FROM OLD_TableName

CREATE TABLE NEW_TableName
LIKE OLD_TableName
INSERT INTO NEW_TableName
SELECT *
FROM OLD_TableName;

На этом всё. Но вы можете поддержать проект. Даже небольшая сумма поможет нам писать больше полезных статей.

Если статья помогла или понравилась, пожалуйста поделитесь ей в соцсетях.

Оцените статью
Хостинги