====== MySQL. Шпаргалка ====== ---- ===== Управление пользователями ===== * **Список пользователей** mysql> SELECT User,Host FROM mysql.user; * **Список прав у пользователя root@localhost** mysql> SHOW GRANTS FOR root@localhost; * **Создание нового пользователя** mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'secret'; * **Добавим выбранные привилегии для всех таблиц БД dbname пользователю 'user'@'localhost'** mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX ON dbname.* TO 'user'@'localhost'; * **Добавить все привилегии для всех таблиц БД dbname пользователю 'user'@'localhost'** mysql> GRANT ALL PRIVILEGES ON dbname.* TO 'user'@'localhost'; * **Удаление прав пользователя 'user'@'localhost' для БД dbname:** mysql> REVOKE ALL ON dbname.* FROM 'user'@'localhost'; * **Перезагрузка привилегий** mysql> FLUSH PRIVILEGES; * **Новый пароль для root** mysqladmin -uroot password 'secret' ---- ====== Управление базой данных ====== * **Создание базы данных** mysql> CREATE DATABASE dbname COLLATE utf8_general_ci; * **Создание базы данных из консоли** mysqladmin -u root -p create dbname * **Удаления базы данных из консоли** mysqladmin -u root -p drop dbname ---- ====== Статистика ====== * **Список всех баз данных** mysql> SHOW DATABASES; * **Список всех таблиц в выбранной базе данных** mysql> SHOW TABLES; * **Статистика по работе сервера** mysql> SHOW GLOBAL STATUS; * **Статистика по таблицам в используемой базе данных** mysql> show table status * **Статистика по всем таблицам указанной базы данных** mysql> show table status FROM db_name * **Статистика по таблицам InnoDB** mysql> show engine innodb status * **Отобразить статус репликации** mysql> show slave status * **Отобразить информацию по текущему статусу бинарного логирования** mysql> show master status ---- ====== Оптимизация ====== При помощи команды **mysqlcheck** можно выполнять проверку, оптимизацию и исправление ошибок. * **Поверка на ошибки БД dbname** mysqlcheck -p dbname * **Восстановление и оптимизация всех БД** mysqlcheck -Aor -p **аргументы:** **-p** – //использовать пароль// \\ **-A** – //проверять все базы данных// \\ **-r** – //ремонтировать БД// \\ **-o** – //оптимизировать БД// \\ * **Скрипт простой оптимизации БД** mysqlcheck --repair --analyze --optimize --all-databases --auto-repair -u root -pSECRET * **mysqltuner** Установим **mysqltuner**, который показывает статистику по работающему mysql-серверу и дает полезные советы по оптимизации. cd /usr/local/bin wget -O mysqltuner.pl http://mysqltuner.pl/ chmod +x mysqltuner.pl /usr/local/bin/mysqltuner.pl При запуске скрипт спросит логин и пароль для root'a. После корректной авторизации будет выведена статистика и разные советы по правке конфигурационного файла MySQL. ----