четверг, 15 марта 2012 г.

Мой справочник MySQL

Не особо часто пользуюсь, записал дабы освежать память.

Инфа:
Все базы по умолчанию хранятся в /var/lib/mysql

Комманды:
Восстановить пароль root
# service mysqld stop
# mysqld_safe --skip-grant-tables &
# mysql
mysql> UPDATE mysql.user SET Password=PASSWORD('новый_пароль') WHERE user='root';
mysql> FLUSH PRIVILEGES;
mysql> \q
# service mysqld start

Резервное копирование БД
# mysqldump --opt -p имя_базы > имя_базы.sql

Восстановление БД из резервной копии
# mysql -p
mysql> CREATE DATABASE имя_базы;
mysql> \q
# mysql -p имя_базы < имя_базы.sql

Починка таблиц в БД
# myisamchk -r /var/lib/mysql/имя_базы/имя_таблицы.MYI

если не помогло
# myisamchk -o /var/lib/mysql/имя_базы/имя_таблицы.MYI

Подключение
mysql -p подключиться с указанием пароль, ключ -u позволяет указать пользователя для подключения.

Статус
mysql> \s   

Выход
mysql> \q   

Посмотреть какие базы есть
mysql> SHOW DATABASES;   

Создать БД
mysql> CREATE DATABASE  имя_базы;

Удалить базу
mysql> DROP DATABASE имя_базы;

Сделать в сессии какую либо БД текущей
mysql> USE имя_базы;

Посмотреть список таблиц
mysql> SHOW TABLES;


Создадать пользователя для  базы
mysql> GRANT SELECT,INSERT,DELETE,UPDATE ON имябд.* TO 'admin'@'localhost' IDENTIFIED BY 'пароль_для_admin';

Посмотреть какие есть права у пользователя.
mysql> SHOW GRANTS FOR 'имя_пользователя'@'localhost';

Подсказка
mysql> HELP

Посмотреть процессы в текущей базе
mysql> SHOW POCESSLIST;


1 комментарий:

  1. Посмотреть процессы в текущей базе
    mysql> SHOW POCESSLIST;
    Букву R пропустил в PROCESSLIST

    ОтветитьУдалить