Просмотр списка пользователей |
SELECT user, host FROM mysql.user; |
SELECT usename FROM pg_user; или \du |
SHOW USERS; |
Создание пользователя |
CREATE USER user@host IDENTIFIED BY 'password'; |
CREATE USER user WITH PASSWORD 'password'; |
CREATE USER user IDENTIFIED BY 'password'; |
Смена пароля пользователя |
GRANT USAGE ON *.* TO user@host IDENTIFIED BY 'password'; |
ALTER USER user WITH PASSWORD 'password'; или \password user |
ALTER USER user IDENTIFIED BY 'password'; |
Просмотр прав пользователя |
SHOW GRANTS FOR user@host; |
\du user и \dp |
SHOW GRANTS FOR user; |
Предоставление прав администратора |
GRANT ALL PRIVILEGES ON *.* TO admin@host WITH GRANT OPTION; |
|
GRANT ALL ON *.* TO admin WITH GRANT OPTION; |
Предоставление права репликации |
GRANT REPLICATION CLIENT ON *.* TO slave@host; |
GRANT REPLICATION TO user; |
|
Предоставление прав резервного копирования |
GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON db.* TO operator@host; |
|
|
Предоставление полного доступа к базе данных |
GRANT ALL ON db.* TO owner@host; |
GRANT ALL PRIVILEGES ON DATABASE db TO owner; |
GRANT ALL ON db.* TO owner; |
Предоставление права только чтения из базы данных |
GRANT SELECT ON db.* TO reader@host; |
GRANT SELECT ON DATABASE db TO user; |
GRANT SELECT ON db.* TO reader; |
Предоставление права только на подключение к базе данных |
GRANT USAGE ON db.* TO user@host; |
GRANT CONNECT ON DATABASE db TO user; |
|
Отбор прав доступа |
REVOKE privileges ON db.table FROM user@host; |
REVOKE privileges ON DATABASE db FROM user; |
REVOKE privileges ON db.table FROM user; |
Удаление пользователя |
DROP USER user@host; |
DROP USER user; |
DROP USER user; |
Применение изменений пользователей и их прав |
FLUSH PRIVILEGES; |
- |
- |
Применение изменений узлов и прав пользователей |
FLUSH HOSTS; |
- |
- |
Установка локального IP-адреса пользователя/доступ через Unix-сокет |
- |
Отредактировать файл /etc/postgresql/9.6/main/pg_hba.conf , добавить строчку вида local "db" "user" md5 |
ALTER USER user HOST LOCAL; |
Установка IP-адреса пользователя |
- |
Отредактировать файл /etc/postgresql/9.6/main/pg_hba.conf , добавить строчку вида host "db" "user" host/32 md5 |
ALTER USER user HOST IP '192.168.1.10'; |
Разрешение пользователю подключаться с любого IP-адреса |
- |
Отредактировать файл /etc/postgresql/9.6/main/pg_hba.conf , добавить строчку вида host "db" "user" 0.0.0.0/0 md5 |
ALTER USER user HOST ANY; |
Назначение пользователю профиля по умолчанию |
- |
- |
ALTER USER user SETTINGS PROFILE default; |
Просмотр списка баз данных |
SHOW DATABASES; |
\l |
SHOW DATABASES; |
Создание базы данных |
CREATE DATABASE db; |
CREATE DATABASE database OWNER owner; |
CREATE DATABASE db; |
Переименование базы данных |
mysqldump db > bak.sql && mysql new_db < bak.sql или |
ALTER DATABASE old_db RENAME TO new_db; |
RENAME DATABASE old_db TO new_db; |
|
mysql old -BNe 'SHOW TABLES;' ! awk '{ print "ALTER TABLE old." $0 " RENAME TO new." $0 ";"; }' ! mysql |
|
|
Удаление базы данных |
DROP DATABASE db; |
DROP DATABASE db; |
DROP DATABASE db; |
Выбор другой базы данных |
USE db; |
\c db |
USE db; |
Просмотр списка таблиц в базе данных |
SHOW TABLES; |
\dt |
SHOW TABLES; |
Переименование таблицы |
RENAME TABLE old_table TO new_table; или RENAME TABLE old_table TO new_table; |
ALTER TABLE old_table RENAME TO new_table; |
RENAME TABLE old_table TO new_table; |
Создание аналогичной таблицы |
CREATE TABLE new_table LIKE old_table; |
CREATE TABLE new_table (LIKE old_table INCLUDING ALL); |
CREATE TABLE new_table LIKE old_table; |
Сжатие таблицы (с блокировкой, обновлением статистики, сообщениями) |
ALTER TABLE table ENGINE=InnoDB; |
VACUUM [FULL ANALYZE VERBOSE] table, ...; |
OPTIMIZE TABLE table FINAL DEDUPLICATE; |
Добавление индекса |
ALTER TABLE table ADD INDEX index(column1, column2, ...); |
CREATE INDEX index ON TABLE table(column1, column2, ...); |
ALTER TABLE [db.]table [ON CLUSTER cluster] ADD INDEX index expression TYPE type GRANULARITY 1; |
Пересчёт индекса для уже имеющихся данных |
- |
- |
ALTER TABLE [db.]table [ON CLUSTER cluster] MATERIALIZE INDEX index; |
Удаление индекса |
ALTER TABLE table DROP INDEX index; |
DROP INDEX index; |
ALTER TABLE [db.]table [ON CLUSTER cluster] DROP INDEX index; |
Резервное копирование всех баз данных |
mysqldump > dbs.sql |
pg_dumpall > dbs.sql |
- |
Восстановление всех баз данных из резервной копии |
mysql < dbs.sql |
psql < dbs.sql |
- |
Резервное копирование базы данных |
mysqldump db > db.sql |
pg_dump -d db > db.sql |
BACKUP DATABASE db TO Disk('backups', 'db.zip'); |
Восстановление базы данных из резервной копии |
mysql db < db.sql |
psql -d db < db.sql |
RESTORE DATABASE db AS db_new TO Disk('backups', 'db.zip'); |
Резервное копирование таблицы |
mysqldump db table > db_table.sql |
pg_dump -d db -t table > db_table.sql |
BACKUP TABLE db.table TO Disk('backups', 'table.zip'); |
Восстановление таблицы из резервной копии |
mysql db < table.sql |
psql -d db < db_table.sql |
RESTORE TABLE db.table AS db_new.table_new FROM Disk('backups', 'table.zip'); |