От MySQL к PostgreSQL. Быстрый старт.

Написана 4 Августа, 2012 в 9:18. Автор: borN_free   |   Теги: mysql, postgresql Комментарии 2

Heading/Alt Text

Как многие из вас, я плотно работаю с MySQL, однако пришлось один проект связать с PostgreSQL. Вот необходимые аналоги команд, которые помогут быстро стартануть.

MySQL PostgreSQL Описание
mysql -u<user> -p<password <database> psql -U <user> <database> -W Подключться к БД используя юзера и пароль (пароль вводится после нажатия Enter)
SHOW DATABASES; \l Список доступных БД
SHOW TABLES; \dt Список доступных таблиц
USE <database>; \c <database> Использовать указанную БД
DESCRIBE <table>; \d <table> Информация о таблице <table>
SHOW FULL PROCESSLIST; SELECT * FROM pg_stat_activity; Список запущенных запросов
exit (or quit or \q) \q Выйти из клиента

Если Вы - пользователь linux, то пароль можно установить следующим образом для юзера postgres:

sudo -u postgres psql postgres
\password NEWPASSWORD

Консольный клиент PostgreSQL запускается через pqsl.

Теперь давайте:

1. Создадим пользователя
2. создадим базу данных
3. Дадим новому пользователю права на созданную БД.

Подключаемся к серверу:

psql -d template1 -U postgres

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

CREATE USER bornfree WITH PASSWORD 'somepass';

Создаем базу данных:

CREATE DATABASE blog;

Наделяем нашего пользователя всеми праваму на вновь созданную БД:

GRANT ALL ON blog.* to bornfree;

Все супер и все готово. Выходим и пробуем подключиться под своим пользователем к базе данных:

\q
psql -d blog -U bornfree -W

Кстати, в качестве бонуса, пользователи Ubuntu - советую использовать графический клиент для PostgreSQL, который легко ставится из терминала:

sudo apt-get install pgadmin3

Приятной Вам разработки!

2 comments

+8 ответить
August 16, 2012 at 03:21 pm

I think

GRANT ALL PRIVILEGES ON DATABASE blog to bornfree;

not

GRANT ALL PRIVILEGES ON DATABASE bornfree to blog;

ответить
August 16, 2012 at 07:46 pm

Thanks.

Исправил в статье описку.

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

Поля с * обязательны.