Работа с mysql в консоле

MySQL

Работать с базой данных MySQL можно не только в программах phpMyAdmin или HeidiSQL, но и в консоле.

Первым делом необходимо определить где располагается mysql
2016-03-11_17-42

Для подключения к mysql

mysql -h 127.0.0.1 -u root -p
  • h — хост базы данных, если коннектимся к локальной базе (по ip 127.0.0.1), этот параметр можно опустить
  • u — имя пользователя
  • p — пароль

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

show databases;

2016-03-11_17-46

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

mysql> use jeka
Database changed

Посмотреть названия всех таблиц в конкретной базе данных (после выполнения use):

mysql> show tables;

Достать информацию о юзере с id=22:

mysql> SELECT * FROM users WHERE id=22;

sql-запрос создание:

show create table table_name;

Если в конце запроса поставить не ; а \G, то результат будет показан другим образом — иногда весьма удобно, если таблица имеет много полей:

select * from update__v4_errors where id = 1102003\G

mysql использования /G вместо; дебаг запроса.

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

show processlist;

Учтите, что будут отображены еще не выполненные (активные) запросы, поэтому show processlist; актуальная команды только для нагруженных БД, в других случаях маловероятно, что команда что то покажет.

Выйти из сеанса работы:

EXIT

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

mysqldump –uUSERNAME –pPASSWORD DATABASE > DATABASE.sql

Импорт базы данных из файла

mysql –uUSERNAME –pPASSWORD DATABASE < DATABASE.sql

Запуск MySQL запроса из консоли

mysql -uUSERNAME -pPASSWORD -e "SHOW DATABASES;"

Некоторый список, повседневных, команд:

  • CREATE DATABASE DB_NAME; – создать новую бд;
  • SHOW DATABASES; – просмотр имеющихся бд;
  • USE DB_NAME; — выбрать бд;
  • SHOW TABLES; – просмотр всех таблиц;
  • SHOW COLUMNS FROM TABLE_NAME; – просмотр колонок и их свойств;
  • CREATE TABLE TABLE_NAME (`ID` INT(11),`NAME` VARCHAR(255)); – создание таблицы;
  • ALTER TABLE TABLE_NAME ADD COLUMN_NAME INT(11); – добавить колонку в таблицу;
  • ALTER TABLE TABLE_NAME DROP COLUMN_NAME; – удалить колонку из таблицы ;
  • MYSQL -UUSERNAME -PPASSWORD -HHOST DB_NAME < FILE_NAME.SQL – залить бд;
  • MYSQLDUMP -UUSERNAME -PPASSWORD -HHOST DB_NAME > FILE_NAME.SQL – сделать дамп бд;
  • QUIT; – выход из консольки MySQL.

 

Команды для восстановления таблиц MySQL

Данные команды могут пригодиться после сбоя сервера.

  • CHECK TABLE имя_таблицы – Проверка таблицы на предмет ошибок в различных режимах.
  • OPTIMIZE TABLE имя_таблицы – Оптимизация таблиц.
  • REPAIR TABLE имя_таблицы – Ввосстановление таблицы.

Кроме этих MySQl команд, при восстановлении таблиц можно пользоваться специальной утилитой myisamchk, поставляемой вместе с MySQl.

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