четверг, 10 мая 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;

Комментариев нет:

Отправить комментарий