Учебник по PostgreSQL
Вступление
Добро пожаловать в учебник по PostgreSQL. Это руководство предназначено для предоставления подробных сведений о PostgreSQL, концепциях реляционных баз данных и языке SQL. Мы предполагаем только некоторые общие знания о СУБД и языке SQL . Никакого особого опыта программирования не требуется.
PostgreSQL считается самым продвинутым решением для баз данных с открытым исходным кодом. PostgreSQL - это система управления объектно-реляционными базами данных (ORDBMS). PostgreSQL произносится как Post-Gres-QL. Разработка PostgreSQL выполняется командой, состоящей в основном из добровольных разработчиков, распространенных по всему миру и общающихся через Интернет. Это проект сообщества и не контролируется какой-либо компанией.
PGDG - это международная неинкорпорированная ассоциация частных лиц и компаний, которые внесли свой вклад в проект PostgreSQL. Основная группа PostgreSQL (комитет из пяти-семи (в настоящее время шесть) старших участников) обычно выступает в качестве докладчиков для PGDG.
PostgreSQL распространяется по лицензии, аналогичной BSD и MIT. По сути, это позволяет пользователям делать с кодом все, что они хотят, в том числе перепродавать двоичные файлы без исходного кода. Единственным ограничением является то, что вы не несете за них юридическую ответственность за проблемы с программным обеспечением. Существует также требование, чтобы это авторское право присутствовало во всех копиях программного обеспечения.
История PostgreSQL
В 1986 году Агентство по перспективным исследовательским проектам в области обороны (DARPA), Исследовательское управление армии (ARO), Национальный научный фонд (NSF) и ESL, Inc спонсировали проект Berkeley POSTGRES, который возглавлял Майкл Стоунбрейкер.
В 1987 году вышла первая демо-версия проекта. В июне 1989 года версия 1 была выпущена для некоторых внешних пользователей. Версии 2 и 3 были выпущены в 1990 и 1991 годах. Версия 3 имела поддержку нескольких менеджеров хранения, улучшен исполнитель запросов, была переписана система правил. После этого POSTGRES начали внедрять в различные проекты исследований и разработок. Например, в конце 1992 года POSTGRES стал основным менеджером данных для проекта научных вычислений Sequoia 20004. Сообщество пользователей вокруг проекта также начало расти; к 1993 году оно удвоилось.
В 1994 году в POSTGRES был добавлен интерпретатор языка SQL. И затем, он был выпущен в Интернет под именем Postgres95. К 1996 году для проекта было выбрано новое имя PostgreSQL.
Поддерживаемые платформы
В общем, можно ожидать, что PostgreSQL будет работать на следующих архитектурах ЦП: x86, x86_64, IA64, PowerPC, PowerPC 64, S / 390, S / 390x, Sparc, Sparc 64, Alpha, ARM, MIPS, MIPSEL, M68K и PA. -RISC. Поддержка кода существует для M32R, NS32K и VAX, но неизвестно, что эти архитектуры были протестированы в последнее время.
Ожидается, что PostgreSQL будет работать в следующих операционных системах: Linux (все последние дистрибутивы), Windows (Win2000 SP4 и более поздние версии), FreeBSD, OpenBSD, NetBSD, Mac OS X, AIX, HP / UX, IRIX, Solaris, Tru64 Unix и UnixWare. Другие Unix-подобные системы также могут работать, но в настоящее время не тестируются. В большинстве случаев все архитектуры ЦП, поддерживаемые данной операционной системой, будут работать.
Ключевые особенности PostgreSQL
Процедурные языки:
PostgreSQL поддерживает четыре стандартных процедурных языка (что позволяет пользователям писать свой собственный код, который может выполняться сервером базы данных) - PL / pgSQL, PL / Tcl, PL / Perl и PL / Python.
Кроме того, поддерживаются и другие нестандартные процедурные языки, такие как PL / PHP, PL / V8, PL / Ruby, PL / Java и т. Д. Но все эти и многие другие нестандартные процедурные языки требуют установки дополнительных пакетов, в отличие от стандартных процедурных языков.
Индексы:
PostgreSQL поддерживает дерево B +, хэш, обобщенные деревья поиска (GiST) и обобщенные инвертированные индексы (GIN). Пользователи также могут создавать свои собственные индивидуальные индексы.
Триггеры:
Триггеры, которые инициализируют действие с помощью оператора языка данных SQL (DML), в основном с помощью операторов INSERT и UPDATE, полностью поддерживаются.
Просмотры:Представления могут создавать виртуальные таблицы. Поддерживается PostgreSQL.
MVCC:
Мультиверсионный контроль параллелизма (MVCC) - это система управления параллелизмом, в которой действие каждого пользователя невидимо для других, пока транзакция не зафиксирована, и, таким образом, несколько пользователей могут работать одновременно.
Правила:
Правила, которые позволяют переписывать иерархию входящего запроса, поддерживаются PostgreSQL.
Типы данных :
PostgreSQL поддерживает следующие типы данных: Boolean, Числа произвольной точности, Символ (текст, varchar, char), Двоичные, Дата / время (временная метка / время с / без часового пояса, дата, интервал), Перечисление денег, Битовые строки, Текст тип поиска, составные массивы переменной длины (включая текстовые и составные типы) общим объемом хранения до 1 ГБ, геометрические примитивы, адреса IPv4 и IPv6, блоки CIDR и MAC-адреса, XML с поддержкой запросов XPath (по состоянию на 8.3), UUID (как 8,3).
Пользовательские объекты:
Он поддерживает создание практически всех новых объектов в базе данных, таких как Приведения, Преобразования, Типы данных, Домены, Функции, включая агрегатные функции и оконные функции, Индексы, включая пользовательские индексы для пользовательских типов Операторы.
Наследование:
В PostgreSQL таблицу можно настроить так, чтобы она наследовала свои характеристики от родительской таблицы.
Расширения:
Чтобы добавить дополнительные функции в PostgreSQL, можно установить несколько расширений.
Другие важные особенности:
Ограничения ссылочной целостности, Внутреннее, внешнее (полное, левое и правое) и перекрестные объединения, Подвыборы, Транзакции, SSL, Домены, Табличные пространства, Точки сохранения, Восстановление на определенный момент времени, реализованные с использованием записи в журнал впереди, Двухфазный commit, TOAST (метод хранения избыточных атрибутов) используется для прозрачного хранения атрибутов больших таблиц (таких как большие вложения MIME или сообщения XML) в отдельной области с автоматическим сжатием, регулярными выражениями, выражениями общих таблиц, встроенным SQL, полным текстом поиск, сортировка по столбцам (из 9.1).
PostgreSQL поддерживает большинство основных функций стандарта SQL: 2008.
Инструменты для управления PostgreSQL
Есть несколько инструментов с открытым исходным кодом, а также платные инструменты доступны в качестве внешнего интерфейса для PostgreSQL. Вот некоторые из них, которые широко используются:
PSQL:
Это инструмент командной строки и основной инструмент для управления PostgreSQL. pgAdmin
Это бесплатный и открытый инструмент администрирования графического интерфейса пользователя для PostgreSQL.
PhpPgAdmin:
Это веб-инструмент администрирования PostgreSQL, написанный на PHP. Он основан на инструменте phpMyAdmin для управления MySQL.OpenOffice.org Base.
Он может быть использован в качестве внешнего интерфейса для PostgreSQL.
pgFouine:
Это анализатор журналов, который создает отчеты из файлов журналов PostgreSQL. Фирменные инструменты
Lightning Admin для PostgreSQL, Borland Kylix, DBOne, DBTools Manager PgManager, Rekall, Архитектор данных, SyBase Power Designer, Microsoft Access, eRWin, DeZign для баз данных, PGExplorer, Case Studio 2, pgEdit, RazorSQL, Дизайнер баз данных MicroOLAP, Aqua Data Studio, Кортежи, инструменты управления базами данных EMS для PostgreSQL, Navicat, продукты SQL Maestro Group для PostgreSQL, Datanamic DataDiff для PostgreSQL, Datanamic SchemaDiff для PostgreSQL, DB MultiRun PostgreSQL Edition, SQLPro, средство просмотра изображений SQL, наборы данных SQL и т. Д.
Что вы узнаете в w3resource Учебник по PostgreSQL
- Обзор, история и что вы выучите
- Типы данных
- Основные команды PostgreSQL
- Расширенные запросы
- сводные показатели
- Функции и операторы
- сдерживает
- присоединяется
- Нумерация строк
- Расширенные операторы SELECT
- PL / PgSQL
- подзапросов
- Просмотры
- Транзакции и блокировки
- LIMIT и курсор
- Повышение производительности
- Управление таблицами
- Импорт и экспорт данных
- Инструменты - psql, pgaccess и phpPgAdmin
Система управления базами данных
Если вы не привыкли к системе управления базами данных, вы можете узнать из следующего:
Вы можете ссылаться на Документацию PostgreSQL вместе с этим руководством.
Далее: Установка PostgreSQL
Новый контент: Composer: менеджер зависимостей для PHP , R программирования