MySQL Шпаргалки

MySQL Шпаргалки

Независимо от того, являетесь ли вы новичком в MySQL или опытным пользователем, это руководство предоставит вам основные команды, которые сделают вашу работу более эффективной и продуктивной. Я буду время от времени обновлять этот список команд.

User Management

@'%' -> external access allowed@'localhost' -> only access on the machine

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

select * from mysql.user

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

CREATE USER 'user_name'@'%' IDENTIFIED BY 'my_password';

Добавьте полные разрешения для базы данны

GRANT ALL PRIVILEGES ON db_name.* TO 'user_name'@'%';

Разрешения только на чтение

GRANT SELECT ON db_name.* TO 'user_name'@'%';

Update host for user

UPDATE mysql.user SET Host='%' WHERE Host='localhost' AND User='username'

Проверка прав доступа для пользователя

SHOW GRANTS for 'user_name'@'%';

Удаление разрешений

REVOKE ALL PRIVILEGES ON db_name.* FROM 'user_name'@'%';

Удалить пользователя

DROP USER 'user_name'@'%';

Привилегии смыва

FLUSH PRIVILEGES;

Ипморт/Экспорт

Экспорт данных

mysqldump --host=my.dbhost.com --databases test_db --port 3306 --user admin -p --lock-tables=false --set-gtid-purged=OFF | gzip -c > /tmp/test_db.sql.gz

Экспорт таблицы с условием

mysqldump --host=my.dbhost.com --port 3306 --user admin -p --lock-tables=false --set-gtid-purged=OFF --databases db --tables test --where="offer_id > 1000" | gzip -c > /tmp/test_db.sql.gz

Export table to append data to a table

mysqldump --host=my.dbhost.com --skip-add-drop-table --no-create-info --port 3306 --user admin -p --lock-tables=false --set-gtid-purged=OFF --databases db --tables test --where="offer_id > 1000" | gzip -c > /tmp/test_db.sql.gz

Экспорт таблицы для добавления данных в таблицу

zcat /tmp/test_db.sql.gz | mysql -u admin -h new.dbhost.com -p test_db

Запустите sql-скрипт в в shell

source /tmp/import.sql

Reduce frequent log flushes by increasing the innodb log file size

Сократите частое удаление журналов, увеличив размер файла журнала innodb

innodb_log_file_size=524288000 (500MB) Default(128MB)

Таблицы

Check table storage engine

SELECT TABLE_SCHEMA as db ,TABLE_NAME as tbl ,ENGINE as engine FROM information_schema.TABLES WHERE ENGINE='MyISAM' AND TABLE_SCHEMA NOT IN('mysql','information_schema','performance_schema');

Change table engine

ALTER TABLE my_table ENGINE=InnoDB

+1
3
+1
0
+1
2
+1
0
+1
0

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *