- Команды postgresql для windows
- Основные команды PostgreSQL в интерактивном режиме:
- Работа с PostgreSQL из командной строки:
- Примеры:
- Утилиты (программы) PosgreSQL:
- Примеры создания резервных копий:
- Список наиболее часто используемых опций:
- Восстановление таблиц из резервных копий (бэкапов):
- Linux и Windows: помощь админам и пользователям
- Администрируем и настраиваем Windows, Linux.
- 15 команд для управления PostgreSQL
- 1. Как изменить root пароль в PostgreSQL?
- 2. Как установить PostgreSQL в автозапуск?
- 3. Проверяем состояние сервера
- 4. Как запустить, остановить, перезапустить PostgreSQL?
- 5. Как посмотреть какая версия PostgreSQL запущена?
- 5. Как создать пользователя в PostgreSQL?
- 6. Как создать базу в PostgreSQL ?
- 7. Получаем список всех баз в Postgresql?
- 8. Как удалить базу в PostgreSQL?
- 9. Пользуемя встроенным хелпом к командам
- 10. Как получить список всех таблиц в базе данный в Postgresql?
- 11. Как узнать время выполнения запроса?
- 12. Как бэкапить и восстанавливать базы и таблицы в PostgreSQL?
- 13. Как посмотреть список доступных функций в PostgreSQL ?
- 14. Как отредактировать запрос к PostgreSQL в редакторе?
- 15. Где я могу найти файл истории postgreSQL?
- Комментариев: 10
- Команды SQL
Команды postgresql для windows
Основные команды PostgreSQL
Все привет сегодня хочу сделать небольшую памятку про основные команды PostgreSQL. Работать с PosgreSQL можно как в интерактивном режиме, так и из командной строки. Программа – psql. Я уверен, что данный список окажется очень вам полезен и сэкономит время на поиск по разным ресурсам. Напоминаю, что это open-source проект, на основе СУБД Postgres, вышла в 1986 году, она разрабатывается всемирной группой разработчиков PGDG, по суте это 5-8 человек, но несмотря на это она, очень интенсивно развивается, вводя все новые функции и испраляя старые баги и ошибки.
Основные команды PostgreSQL в интерактивном режиме:
- \connect db_name – подключиться к базе с именем db_name
- \du – список пользователей
- \dp (или \z) – список таблиц, представлений, последовательностей, прав доступа к ним
- \di – индексы
- \ds – последовательности
- \dt – список таблиц
- \dt+ — список всех таблиц с описанием
- \dt *s* — список всех таблиц, содержащих s в имени
- \dv – представления
- \dS – системные таблицы
- \d+ – описание таблицы
- \o – пересылка результатов запроса в файл
- \l – список баз данных
- \i – читать входящие данные из файла
- \e – открывает текущее содержимое буфера запроса в редакторе (если иное не указано в окружении переменной EDITOR, то будет использоваться по умолчанию vi)
- \d “table_name” – описание таблицы
- \i запуск команды из внешнего файла, например \i /my/directory/my.sql
- \pset – команда настройки параметров форматирования
- \echo – выводит сообщение
- \set – устанавливает значение переменной среды. Без параметров выводит список текущих переменных (\unset – удаляет).
- \? – справочник psql
- \help – справочник SQL
- \q (или Ctrl+D) – выход с программы
Работа с PostgreSQL из командной строки:
- -c (или –command) – запуск команды SQL без выхода в интерактивный режим
- -f file.sql — выполнение команд из файла file.sql
- -l (или –list) – выводит список доступных баз данных
- -U (или –username) – указываем имя пользователя (например postgres)
- -W (или –password) – приглашение на ввод пароля
- -d dbname — подключение к БД dbname
- -h – имя хоста (сервера)
- -s – пошаговый режим, то есть, нужно будет подтверждать все команды
- –S – однострочный режим, то есть, переход на новую строку будет выполнять запрос (избавляет от ; в конце конструкции SQL)
- -V – версия PostgreSQL без входа в интерактивный режим
Примеры:
psql -U postgres -d dbname -c “CREATE TABLE my(some_id serial PRIMARY KEY, some_text text);” — выполнение команды в базе dbname.
psql -d dbname -H -c «SELECT * FROM my» -o my.html — вывод результата запроса в html-файл.
Утилиты (программы) PosgreSQL:
- createdb и dropdb – создание и удаление базы данных (соответственно)
- createuser и dropuser – создание и пользователя (соответственно)
- pg_ctl – программа предназначенная для решения общих задач управления (запуск, останов, настройка параметров и т.д.)
- postmaster – многопользовательский серверный модуль PostgreSQL (настройка уровней отладки, портов, каталогов данных)
- initdb – создание новых кластеров PostgreSQL
- initlocation – программа для создания каталогов для вторичного хранения баз данных
- vacuumdb – физическое и аналитическое сопровождение БД
- pg_dump – архивация и восстановление данных
- pg_dumpall – резервное копирование всего кластера PostgreSQL
- pg_restore – восстановление БД из архивов (.tar, .tar.gz)
Примеры создания резервных копий:
Создание бекапа базы mydb, в сжатом виде
Создание бекапа базы mydb, в виде обычного текстового файла, включая команду для создания БД
Создание бекапа базы mydb, в сжатом виде, с таблицами которые содержат в имени payments
Дамп данных только одной, конкретной таблицы. Если нужно создать резервную копию нескольких таблиц, то имена этих таблиц перечисляются с помощью ключа -t для каждой таблицы.
Создание резервной копии с сжатием в gz
Список наиболее часто используемых опций:
- -h host — хост, если не указан то используется localhost или значение из переменной окружения PGHOST.
- -p port — порт, если не указан то используется 5432 или значение из переменной окружения PGPORT.
- -u — пользователь, если не указан то используется текущий пользователь, также значение можно указать в переменной окружения PGUSER.
- -a, —data-only — дамп только данных, по-умолчанию сохраняются данные и схема.
- -b — включать в дамп большие объекты (blog’и).
- -s, —schema-only — дамп только схемы.
- -C, —create — добавляет команду для создания БД.
- -c — добавляет команды для удаления (drop) объектов (таблиц, видов и т.д.).
- -O — не добавлять команды для установки владельца объекта (таблиц, видов и т.д.).
- -F, —format
— выходной формат дампа, custom, tar, или plain text. - -t, —table=TABLE — указываем определенную таблицу для дампа.
- -v, —verbose — вывод подробной информации.
- -D, —attribute-inserts — дамп используя команду INSERT с списком имен свойств.
Бекап всех баз данных используя команду pg_dumpall.
Восстановление таблиц из резервных копий (бэкапов):
psql — восстановление бекапов, которые хранятся в обычном текстовом файле (plain text);
pg_restore — восстановление сжатых бекапов (tar);
Восстановление всего бекапа с игнорированием ошибок
Восстановление всего бекапа с остановкой на первой ошибке
Для восстановления из tar-арихива нам понадобиться сначала создать базу с помощью CREATE DATABASE mydb; (если при создании бекапа не была указана опция -C) и восстановить
Восстановление резервной копии БД, сжатой gz
psql -U postgres -d mydb -f mydb
Я думаю база данных postgresql теперь будет более понятна вам. Надеюсь данный список команд PostgreSQLбыл для вас полезным.
Linux и Windows: помощь админам и пользователям
Администрируем и настраиваем Windows, Linux.
15 команд для управления PostgreSQL
В этой статье я покажу 15 наиболее полезных команд для управления postgreSQL.
1. Как изменить root пароль в PostgreSQL?
Изменение пароля для обычного пользователя происходит таким же образом. Пользователь root может поменять пароль любому пользователю.
2. Как установить PostgreSQL в автозапуск?
3. Проверяем состояние сервера
4. Как запустить, остановить, перезапустить PostgreSQL?
5. Как посмотреть какая версия PostgreSQL запущена?
5. Как создать пользователя в PostgreSQL?
Для этого существуют два метода..
Метод 1: Создаем пользователя в через PSQL шелл, командой CREATE USER.
Метод 2: Создаем пользователя в через шелл команду createuser.
6. Как создать базу в PostgreSQL ?
Для этого существует 2 метода.
Метод 1: Создаем базу черезе PSQL шелл, с помощью команды CREATE DATABASE.
Метод 2: Используем команду createdb.
7. Получаем список всех баз в Postgresql?
8. Как удалить базу в PostgreSQL?
9. Пользуемя встроенным хелпом к командам
Команда \? отобразит строку помощи для команда PSQL. \h CREATE покажет хелп для всех команд который начинаются с CREATE.
10. Как получить список всех таблиц в базе данный в Postgresql?
Для пустой базы вы получите сообщение “No relations found.”
11. Как узнать время выполнения запроса?
# \timing — после выполения данной команды каждый последующий запрос будет показывать время выполнения.
12. Как бэкапить и восстанавливать базы и таблицы в PostgreSQL?
Этот вопрос довольно велик и я опубликую его позднее отдельной статьей.
13. Как посмотреть список доступных функций в PostgreSQL ?
Для того чтобы получить список доступных функций, скажите \df+
14. Как отредактировать запрос к PostgreSQL в редакторе?
\e откроет редактор, в котором вы можете отредактировать запрос и сохранить его.
15. Где я могу найти файл истории postgreSQL?
/.bash_history, postgreSQL хранит все sql команды в файле
Разное
Лучшие выставочные стенды в Москве. Отличное качество выполнения, невысокие цены.
Курьерская служба, доставка по Москве и Московской области, срочная доставка, рассылки писем, счетов, журналов
Комментариев: 10
Очень хорошая статья, люблю живые примеры
С удовольствием прочитаю статью про бэкапы в postgresql
Спасибо, подборка очень выручила когда пришлось аврально разбираться, как с postgesql работать.
И да, примерах с кодом у меня повылазили тэги , лучше бы их убрать, читать мешает.
продвижение сайтов — SEO www.top5.com.ua и раскрутка в Киеве
Как и везде — много полезного, но нет нужного( ничего не сказано про разрешения и полномочия для обычных пользователей постгреса..
$ su — root
# tar xvfz postgresql-8.3.7.tar.gz
# cd postgresql-8.3.7
# cp contrib/start-scripts/linux /etc/rc.d/init.d/postgresql
# chmod a+x /etc/rc.d/init.d/postgresql
Не получается :((( команда postgresql status говорит что он остановлен.
Странно. Я пользуюсь Ruby On Rails и у меня иногда удаляется база данных. Причём, непонятно почему.
А так — спасибо за список команд — помогло.
Как посмотреть какая версия PostgreSQL запущена?
Полная ахинея. Нужно быть придурком чтобы таким образом определять версию постгреса,
в то время как простое —help нам подскажет, что достаточно и «psql —version«.
Автор просто скопипастил текст «статьи» откуда-то даже не удосужившись удалить html-тэги.
При написании подобных статей почему-то не учитывается специфика дистрибутива. Да — они все похожи, это не оспоримо, но тем не менее хотелось бы дополнить.
Первое с чем сталкиваются новички, а работает ли на нужном порту постгри. Решается командой , если вывод команды пустой, значит сервис не работает.
Также хочется отметить, что способов запуска/остановки процессов в разных системах минимум 2, тут выделен самый неудачный в плане длинного пути и отсутствия стандартизации запуска процессов.
Есть команда показывающая место расположения базы данных:
Как понимаю 1 row — это означает первая база. Как посмотреть вторую?
Команды SQL
Содержание ABORT — прервать текущую транзакцию ALTER AGGREGATE — изменить определение агрегатной функции ALTER COLLATION — изменить определение правила сортировки ALTER CONVERSION — изменить определение перекодировки ALTER DATABASE — изменить атрибуты базы данных ALTER DEFAULT PRIVILEGES — определить права доступа по умолчанию ALTER DOMAIN — изменить определение домена ALTER EVENT TRIGGER — изменить определение событийного триггера ALTER EXTENSION — изменить определение расширения ALTER FOREIGN DATA WRAPPER — изменить определение обёртки сторонних данных ALTER FOREIGN TABLE — изменить определение сторонней таблицы ALTER FUNCTION — изменить определение функции ALTER GROUP — изменить имя роли или членство ALTER INDEX — изменить определение индекса ALTER LANGUAGE — изменить определение процедурного языка ALTER LARGE OBJECT — изменить определение большого объекта ALTER MATERIALIZED VIEW — изменить определение материализованного представления ALTER OPERATOR — изменить определение оператора ALTER OPERATOR CLASS — изменить определение класса операторов ALTER OPERATOR FAMILY — изменить определение семейства операторов ALTER POLICY — изменить определение политики защиты на уровне строк ALTER PROCEDURE — изменить определение процедуры ALTER PUBLICATION — изменить определение публикации ALTER ROLE — изменить роль в базе данных ALTER ROUTINE — изменить определение подпрограммы ALTER RULE — изменить определение правила ALTER SCHEMA — изменить определение схемы ALTER SEQUENCE — изменить определение генератора последовательности ALTER SERVER — изменить определение стороннего сервера ALTER STATISTICS — изменить определение объекта расширенной статистики ALTER SUBSCRIPTION — изменить определение подписки ALTER SYSTEM — изменить параметр конфигурации сервера ALTER TABLE — изменить определение таблицы ALTER TABLESPACE — изменить определение табличного пространства ALTER TEXT SEARCH CONFIGURATION — изменить определение конфигурации текстового поиска ALTER TEXT SEARCH DICTIONARY — изменить определение словаря текстового поиска ALTER TEXT SEARCH PARSER — изменить определение анализатора текстового поиска ALTER TEXT SEARCH TEMPLATE — изменить определение шаблона текстового поиска ALTER TRIGGER — изменить определение триггера ALTER TYPE — изменить определение типа ALTER USER — изменить роль в базе данных ALTER USER MAPPING — изменить определение сопоставления пользователей ALTER VIEW — изменить определение представления ANALYZE — собрать статистику по базе данных BEGIN — начать блок транзакции CALL — вызвать процедуру CHECKPOINT — произвести контрольную точку в журнале предзаписи CLOSE — закрыть курсор CLUSTER — кластеризовать таблицу согласно индексу COMMENT — задать или изменить комментарий объекта COMMIT — зафиксировать текущую транзакцию COMMIT PREPARED — зафиксировать транзакцию, которая ранее была подготовлена для двухфазной фиксации COPY — копировать данные между файлом и таблицей CREATE ACCESS METHOD — создать новый метод доступа CREATE AGGREGATE — создать агрегатную функцию CREATE CAST — создать приведение CREATE COLLATION — создать правило сортировки CREATE CONVERSION — создать перекодировку CREATE DATABASE — создать базу данных CREATE DOMAIN — создать домен CREATE EVENT TRIGGER — создать событийный триггер CREATE EXTENSION — установить расширение CREATE FOREIGN DATA WRAPPER — создать новую обёртку сторонних данных CREATE FOREIGN TABLE — создать стороннюю таблицу CREATE FUNCTION — создать функцию CREATE GROUP — создать роль в базе данных CREATE INDEX — создать индекс CREATE LANGUAGE — создать процедурный язык CREATE MATERIALIZED VIEW — создать материализованное представление CREATE OPERATOR — создать оператор CREATE OPERATOR CLASS — создать класс операторов CREATE OPERATOR FAMILY — создать семейство операторов CREATE POLICY — создать новую политику защиты на уровне строк для таблицы CREATE PROCEDURE — создать процедуру CREATE PUBLICATION — создать публикацию CREATE ROLE — создать роль в базе данных CREATE RULE — создать правило перезаписи CREATE SCHEMA — создать схему CREATE SEQUENCE — создать генератор последовательности CREATE SERVER — создать сторонний сервер CREATE STATISTICS — создать расширенную статистику CREATE SUBSCRIPTION — создать подписку CREATE TABLE — создать таблицу CREATE TABLE AS — создать таблицу из результатов запроса CREATE TABLESPACE — создать табличное пространство CREATE TEXT SEARCH CONFIGURATION — создать конфигурацию текстового поиска CREATE TEXT SEARCH DICTIONARY — создать словарь текстового поиска CREATE TEXT SEARCH PARSER — создать анализатор текстового поиска CREATE TEXT SEARCH TEMPLATE — создать шаблон текстового поиска CREATE TRANSFORM — создать трансформацию CREATE TRIGGER — создать триггер CREATE TYPE — создать новый тип данных CREATE USER — создать роль в базе данных CREATE USER MAPPING — создать сопоставление пользователя для стороннего сервера CREATE VIEW — создать представление DEALLOCATE — освободить подготовленный оператор DECLARE — определить курсор DELETE — удалить записи таблицы DISCARD — очистить состояние сеанса DO — выполнить анонимный блок кода DROP ACCESS METHOD — удалить метод доступа DROP AGGREGATE — удалить агрегатную функцию DROP CAST — удалить приведение типа DROP COLLATION — удалить правило сортировки DROP CONVERSION — удалить преобразование DROP DATABASE — удалить базу данных DROP DOMAIN — удалить домен DROP EVENT TRIGGER — удалить событийный триггер DROP EXTENSION — удалить расширение DROP FOREIGN DATA WRAPPER — удалить обёртку сторонних данных DROP FOREIGN TABLE — удалить стороннюю таблицу DROP FUNCTION — удалить функцию DROP GROUP — удалить роль в базе данных DROP INDEX — удалить индекс DROP LANGUAGE — удалить процедурный язык DROP MATERIALIZED VIEW — удалить материализованное представление DROP OPERATOR — удалить оператор DROP OPERATOR CLASS — удалить класс операторов DROP OPERATOR FAMILY — удалить семейство операторов DROP OWNED — удалить объекты базы данных, принадлежащие роли DROP POLICY — удалить политику защиты на уровне строк для таблицы DROP PROCEDURE — удалить процедуру DROP PUBLICATION — удалить публикацию DROP ROLE — удалить роль в базе данных DROP ROUTINE — удалить подпрограмму DROP RULE — удалить правило перезаписи DROP SCHEMA — удалить схему DROP SEQUENCE — удалить последовательность DROP SERVER — удалить описание стороннего сервера DROP STATISTICS — удалить расширенную статистику DROP SUBSCRIPTION — удалить подписку DROP TABLE — удалить таблицу DROP TABLESPACE — удалить табличное пространство DROP TEXT SEARCH CONFIGURATION — удалить конфигурацию текстового поиска DROP TEXT SEARCH DICTIONARY — удалить словарь текстового поиска DROP TEXT SEARCH PARSER — удалить анализатор текстового поиска DROP TEXT SEARCH TEMPLATE — удалить шаблон текстового поиска DROP TRANSFORM — удалить трансформацию DROP TRIGGER — удалить триггер DROP TYPE — удалить тип данных DROP USER — удалить роль в базе данных DROP USER MAPPING — удалить сопоставление пользователя для стороннего сервера DROP VIEW — удалить представление END — зафиксировать текущую транзакцию EXECUTE — выполнить подготовленный оператор EXPLAIN — показать план выполнения оператора FETCH — получить результат запроса через курсор GRANT — определить права доступа IMPORT FOREIGN SCHEMA — импортировать определения таблиц со стороннего сервера INSERT — добавить строки в таблицу LISTEN — ожидать уведомления LOAD — загрузить файл разделяемой библиотеки LOCK — заблокировать таблицу MOVE — переместить курсор NOTIFY — сгенерировать уведомление PREPARE — подготовить оператор к выполнению PREPARE TRANSACTION — подготовить текущую транзакцию для двухфазной фиксации REASSIGN OWNED — сменить владельца объектов базы данных, принадлежащих заданной роли REFRESH MATERIALIZED VIEW — заменить содержимое материализованного представления REINDEX — перестроить индексы RELEASE SAVEPOINT — высвободить ранее определённую точку сохранения RESET — восстановить значение по умолчанию заданного параметра времени выполнения REVOKE — отозвать права доступа ROLLBACK — прервать текущую транзакцию ROLLBACK PREPARED — отменить транзакцию, которая ранее была подготовлена для двухфазной фиксации ROLLBACK TO SAVEPOINT — откатиться к точке сохранения SAVEPOINT — определить новую точку сохранения в текущей транзакции SECURITY LABEL — определить или изменить метку безопасности, применённую к объекту SELECT — получить строки из таблицы или представления SELECT INTO — создать таблицу из результатов запроса SET — изменить параметр времени выполнения SET CONSTRAINTS — установить время проверки ограничений для текущей транзакции SET ROLE — установить идентификатор текущего пользователя в рамках сеанса SET SESSION AUTHORIZATION — установить идентификатор пользователя сеанса и идентификатор текущего пользователя в рамках сеанса SET TRANSACTION — установить характеристики текущей транзакции SHOW — показать значение параметра времени выполнения START TRANSACTION — начать блок транзакции TRUNCATE — опустошить таблицу или набор таблиц UNLISTEN — прекратить ожидание уведомления UPDATE — изменить строки таблицы VACUUM — провести сборку мусора и, возможно, проанализировать базу данных VALUES — вычислить набор строк
Пред. | Наверх | След. |
Часть VI. Справочное руководство | Начало | ABORT |
Есть вопросы? Напишите нам!
Соглашаюсь с условиями обработки персональных данных