Установка и использование postgresql на ubuntu 20.04
Содержание:
- Введение
- HASP Licence manager
- Использование PostgreSQL из Python
- Обновите данные в таблице
- Управление пользователями
- Запуск сервера
- Установка
- Создавать и удалять таблицы
- Шаг 7: работа со столбцами в таблице
- Настройка сервера
- Пользователи (роли)
- Миграция базы на PostgreSQL
- Базовая настройка PostgreSQL 10 в Linux Ubuntu Server
- Установка 1С:Предприятие на Ubuntu
- Connect to Postgres with the New User
- Install PostgreSQL from PostgreSQL Apt Repository
- Установка PostgreSQL в Ubuntu
- Install PostgreSQL from Local Ubuntu Repository
Введение
Что охватывает эта статья?
Эта статья проведет вас через специфичные для Gentoo шаги по установке СУРБД PostgreSQL.
В этой статье предполагается, что вы будете устанавливать последнюю, стабильную версию PostgreSQL; на время написания, этой версией является 9.3.5. Исправьте команды в этой статье так, как это требуется для вашей определенной версии.
О ebuild-файлах
Файлы ebuild для PostgreSQL в системе Portage отличаются номерами слотов, основанными на главной версии. Это позволяет вам иметь две главных версии PostgreSQL действующих одновременно; библиотеки и сервера версий 9.0-9.4 могут устанавливаться и обслуживаться в одно и то же время. Это полезно в тех обстоятельствах, когда вам нужно перенести данные из старой базы данных в новую, или требуется иметь рабочую и тестовую базу данных на одной и той же машине. Также, это предотвращает перезаписывание баз данных, соответствующих библиотек или исполняемых файлов несовместимым обновлением. Это требует миграции, которая описана в данном руководстве.
Вдобавок, исправления ошибок и уязвимостей безопасности, которые поставляются через обновления младших версий, могут применяться без страха повреждения базы данных или самой сборки PostgreSQL; 9.3.4 может обновляться до 9.3.5, так как гарантируется их совместимость и они не требуют от вас большего, чем установка и перезапуск серверного процесса. Ни миграция, ни повторная конфигурация, ни инициализация не являются необходимыми.
HASP Licence manager
Если в сервер вставлен аппаратный ключ, необходимо установить HASP Licence manager, чтобы лицензии могли получать компьютеры по сети.
Проверяем, что наш сервер видит ключ:
lsusb | grep -i hasp
Мы должны увидеть что-то на подобие:
Bus 001 Device 003: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 002: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Устанавливаем необходимые пакеты:
apt-get install make libc6-i386
* где:
- make — утилите, которая в нашем случае используется для компиляция исходного кода.
- libc6-i386 — набор стандартных библиотек для С и математических вычислений.
Создадим каталог для загрузки пакетов и перейдем в него:
mkdir /tmp/hasp ; cd /tmp/hasp
Переходим на страницу загрузки HASP для Ubuntu. Выбираем необходимую версию и копируем ссылки на 2 файла — haspd-modules_… и haspd_…
На момент обновления инструкции на сайте не было пакетов для Ubuntu 20, однако, для данной версии подходят пакеты под Ubuntu 18.
С помощью скопированных ссылок загружаем на сервер два файла:
wget https://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/18.04/haspd-modules_7.90-eter2ubuntu_amd64.deb
wget https://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/18.04/haspd_7.90-eter2ubuntu_amd64.deb
* в моем примере загрузка выполнялась для Ubuntu 18.04.
Выполним установку скачанных пакетов командой:
dpkg -i haspd*.deb
Разрешим автозапуск сервиса haspd:
systemctl enable haspd
Запускаем его:
systemctl start haspd
Проверяем, что он корректно стартовал и работает:
systemctl status haspd
Готово — наши компьютеры в локальной сети смогут получить лицензию.
Использование PostgreSQL из Python
Запустите Python REPL с помощью команды или . Вы также можете напишите следующий код в файле Python, например testpostgres.py, затем выполнить его с помощью . Обязательно замените “пользователь” и значения “пароля” с вашими собственными.
import psycopg2 try: connect_str = "dbname='testpython' user='matt' host='localhost' " + \ "password='myOwnPassword'" # use our connection values to establish a connection conn = psycopg2.connect(connect_str) # create a psycopg2 cursor that can execute queries cursor = conn.cursor() # create a new table with a single column called "name" cursor.execute("""CREATE TABLE tutorials (name char(40));""") # run a SELECT statement - no data in there, but we can try it cursor.execute("""SELECT * from tutorials""") conn.commit() # <--- makes sure the change is shown in the database rows = cursor.fetchall() print(rows) cursor.close() conn.close() except Exception as e: print("Uh oh, can't connect. Invalid dbname, user or password?") print(e)
Когда мы запустим приведенный выше код, мы не получим ничего особенного, просто пустой список распечатан. Однако в этих нескольких строках кода мы обеспечили подключение к нашей новой базе данных работает, и мы можем создавать в ней новые таблицы как а также запросить их.
Этого хватит, чтобы начать писать более сложный SQL запросы с использованием psycopg2 и PostgreSQL. Обязательно ознакомьтесь с PostgreSQL, реляционные базы данных и объектно-реляционные преобразователи (ORM) страницы для дополнительных руководств.
Вопросов? Твитнуть @fullstackpython или опубликуйте сообщение на Страница Full Stack Python на Facebook .
Что-то не так в этом посте? Вилка исходный код этой страницы на GitHub и отправьте запрос на перенос.
Обновите данные в таблице
До сих пор вы узнали, как добавлять записи в таблицу и как их удалять, но в этом руководстве не описано, как изменять существующие записи.
Вы можете обновить значение существующей записи, запросив нужную запись и установив для столбца значение, которое вы хотите использовать. Вы можете запросить запись «свинга» (она будет соответствоватькаждыйSwing) и измените его цвет на «красный». Если вы настроили покраску качелей, это может пригодиться:
Вы можете проверить успешность операции, снова запросив данные:
Output
Как видите, ваши слайды теперь зарегистрированы как красные.
вперед от:https://huur.cn/course/yw/1591.html
Управление пользователями
В PostgreSQL используется концепция ролей. Одну роль можно рассматривать как отдельного пользователя или как группу пользователей. Роли могут владеть объектами БД и выдавать разрешения другим ролям.
По умолчанию была создана роль postgres. Давайте создадим еще одну роль. Для этого из консоли системы выполняем команду:
createuser -P --interactive
Система запросит имя для новой роли, пароль, а также позволит настроить привилегии — например, нужно ли давать права суперпользователя или разрешать создавать другие роли и базы данных.
Если вы уже зашли в psql, то создать новую роль можно командой:
CREATE ROLE имя_новой_роли WITH LOGIN CREATEDB CREATEROLE; // В конце обязательно ставим ;
Затем задаем пароль:
\password имя_роли
Вывести список всех ролей можно командой /du. Кроме имен отобразятся привилегии каждого роли.
Чтобы закрыть список ролей, выполняем команду q.
Для удаления пользователя выполняем команду:
DROP ROLE имя_роли;
Это можно также сделать из консоли системы с помощью команды:
drop user имя_роли
Чтоб сменить пароль пользователя, подключаемся к psql с правами суперпользователя. Затем выполняем следующую команду:
ALTER USER имя_роли WITH PASSWORD 'новый_пароль';
Эта операция сохраняется в файле .psql_history вместе с паролем, который не будет зашифрован. В качестве дополнительной меры безопасности эту запись рекомендуется удалить. Файл обычно находится в директории /var/lib/postgresql.
Запуск сервера
Поехали!
Теперь, запустите PostgreSQL и установите пароль для суперпользователя базы данных postgres.
Измените ‘trust’ на ‘password’ для соединений с ‘host’ (не с ‘local’ Unix сокетом).
Теперь запустите базу данных:
postgresql-9.3 | * Starting PostgreSQL ...
Откройте соединение к серверу и установите пароль:
psql (9.3.5) Type "help" for help.
Enter new password: Enter it again:
Измените ‘trust’ на ‘password’ для локальных соединений:
Теперь перезагрузите настройки базы данных:
postgresql-9.3 | * Reloading PostgreSQL configuration ...
* service postgresql-9.3 added to runlevel default
Установка
Есть несколько способов скачать программу. Самый простой — через репозиторий.
- Запустите Терминал.
- Для загрузки утилиты напечатайте несколько строчек. Чтобы действовать от имени администратора, напишите sudo перед командой.
- Обновите систему — «apt-get update».
- Проинсталлируйте само приложение — «apt-get install postgresql».
Подождите, пока программа загрузится. И скачайте дополнительные модули:
- Поставьте Contrib — добавьте к предыдущей команде «postgresql-contrib».
- Также пригодится клиент — «postgresql-client».
- Чтобы при работе использовать графический интерфейс, введите в той же строке «apt-get install phppgadmin».
Лучше сразу «проапгрейдить» phpPgAdmin: установить пакет, который расширит его возможности. Вы получите улучшенный мониторинг и логирование. Чтобы его активировать, напишите «sudo su postgres -c psql < /usr/share/postgresql//contrib/adminpack.sql».
Инсталляция будет одинаковой как в случае с репозиторием, так и с PPA
Для инсталляции из РРА подойдут те же самые команды. Можно загрузить установочные файлы с сайта программы. Для этого:
- Используйте команду nano. С ней введите путь к «/etc/apt/sources.list.d/pgdg.list».
- В следующей строке введите deb. Вставьте ссылку — «apt.postgresql.org/pub/repos/apt/». Дополнительно добавьте скрипт — «<span id=»series-deb»>wily</span>-pgdg main».
- Напечатайте команду для загрузки — wget. С параметром «—quiet -O». Скопируйте ссылку на файл «- postgresql.org/media/keys/ACCC4CF8.asc», чтобы его скачать. В той же строке введите «| sudo apt-key add -» для ключа. Всё с дефисами и вертикальной чертой. Кавычки уберите.
- Обновите систему — «apt-get update». Для этого нужны права администратора (sudo).
- Теперь можете ставить саму программу — «apt-get install postgresql-».
Далее, скачайте клиент, Contrib и графическую оболочку. Утилита готова. Но нужно её настроить.
Создавать и удалять таблицы
Теперь, когда вы знаете, как подключиться к системе баз данных PostgreSQL, вы можете изучить некоторые основные задачи управления Postgres.
Сначала создайте таблицу для хранения некоторых данных. В качестве примера опишите таблицу какого-либо игрового оборудования.
Основной синтаксис команды следующий:
Как видите, эти команды предоставляют имя для таблицы, а затем определяют столбец и максимальную длину типа столбца и данных поля. Вы также можете добавить ограничения таблицы для каждого столбца.
ты можешьвУзнать больше оКак создавать таблицы и управлять ими в PostgresИнформация.
В демонстрационных целях создайте простую таблицу, как показано ниже:
Эти команды создадут таблицу инвентаря игрового оборудования. Это начинается с идентификатора устройства, Этот тип данных представляет собой автоматически увеличивающееся целое число. Вы также указали это ограничение столбца,Это означает, что эти значения должны быть уникальными и не пустыми.
Для двух столбцов (с участием) эти команды не определяют длину поля. Это связано с тем, что для некоторых типов столбцов не требуется устанавливать длину, поскольку тип подразумевает длину.
Столбец создания устройства для следующих двух командс участиемСоответственно, каждый из них не может быть пустым. После этих команд создайтеСтолбцы и создайте ограничение, которое требует, чтобы значение было одним из восьми возможных значений. Последняя команда создает столбец даты, в котором записывается дата установки устройства.
Вы можете ввести следующее, чтобы просмотреть новую таблицу:
Output
Ваш игровой стол здесь, но есть и такие, которые называютсяТакого рода вещи, этоТыПредставление типа, предоставляемого столбцом. Это позволит отследить следующий номер в последовательности и автоматически создать столбец этого типа.
Если вы хотите видеть только таблицы без последовательности, вы можете ввести:
Output
Шаг 7: работа со столбцами в таблице
Как добавить и удалить столбцы в таблице
Если вы хотите изменить таблицу после того, как она была создана (например, добавить еще один столбец last_maint date), то сделать это можно вот таким образом:
ALTER TABLE playground ADD last_maint date;
Вам просто нужно указать название таблицы, действие и название столбца.
Если после этого вы посмотрите таблицу, то увидите, что новый столбец был добавлен, но никакой информации он пока не содержит.
SELECT * FROM playground;
Вывод:
equip_id | type | color | location | install_date | last_maint ----------+-------+--------+-----------+--------------+------------ 2 | swing | yellow | northwest | 2010-08-16 | (1 row)
Так же легко можно и удалять ненужные столбцы:
ALTER TABLE playground DROP last_maint;
Настройка сервера
Первые 4 шага относятся к настройке сервера Zabbix. Поехали!
Шаг №1. Подготовка к установке
Сразу оговоримся, что мы будем выполнять настройку только того, что явно относится к развертыванию Zabbix. Конфигурирование параметров ОС, сети и др. мы здесь рассматривать не будем. Например, если Вам нужно выполнить настройку SELinux, то лучше обратиться к официальной документации по установке. Также не забываем открыть нужные порты в брандмауэре. Эти две темы мы касались также и в предыдущих статьях, но в контексте CentOS.
И так, консоль открыта и пора ввести первую команду — обновление индекса пакетов, чтобы были доступны все самые последние версии ПО из репозиториев.
После обновления индекса, возможно, Вы захотите применить все обновления.
В некоторых случаях может понадобиться перезагрузка машины.
На этом подготовительные действия закончены.
Шаг №2. Готовим базу данных
Установим PostgreSQL для развертывания базы данных Zabbix. Для установки обратимся к официальной документации. В итоге для установки нам потребуется сделать следующие шаги:
После установки проверим состояние запуска демона PostgreSQL.
Видим, что демон активен, все отлично. Далее настраиваем доступ к базе “zabbix” пользователю “zabbix” по паролю. Да, базы “zabbix” еще нет (и пользователя тоже), так что эта настройка на будущее
Открываем в текстовом редакторе файл “/etc/postgresql/13/main/pg_hba.conf” и добавляем вот эту строку (важно добавить в этом месте, чтобы настройки были применены с соответствующим приоритетом). После внесения изменений перезапускаем PostgreSQL
Идем дальше.
Шаг №3. А вот и Zabbix
Опять же, подробная инструкция есть в официальной документации. Рассмотрим основные шаги.
Теперь идем своим любимым текстовым редакторов в файл “/etc/zabbix/zabbix_server.conf” и устанавливаем пароль для подключения к базе данных.
Все готово для первого запуска Zabbix-сервера и Zabbix-агента (который мониторит машину с Zabbix-сервером. Мониторинг для мониторинга :)).
Все основные компоненты настроены и запущены. Теперь настал момент настроить сам Zabbix
Шаг №4. На старт, настраиваем, запускаем
Прежде чем продолжить нужно еще выполнить одно действие в консоли — добавить необходимые локали для использования русского интерфейса.
Теперь идем по адресу, где расположен Zabbix-сервер. В нашем случае это “http://192.168.1.181/zabbix”. У вас это, скорее всего, другой адрес или даже удобочитаемое имя.
Первым делом нам открывается страница приветствия, где нам нужно выбрать язык по умолчанию.
Далее убеждаемся, что все требования для работы Zabbix удовлетворены.
После этого оказываемся на этапе настройки подключения к БД. Вводим пароль и идем к следующему шагу (пароль ранее уже вводили в файле конфигурации), а также отключаем TLS шифрование, если оно не нужно.
На этапе настройки деталей сервера оставляем как есть узел и порт.
На следующем шаге настройки внешнего вида выбираем часовой пояс (в примере оставил UTC) и тему оформления (предпочитаю темную).
Почти все готово. Смотрим на предварительный обзор настроек. Если все хорошо, но жмем “Далее”.
Предварительная настройка готова! Видим поздравления.
Нас переадресуют на страницу входа, где используем стандартные логин и пароль: Admin и zabbix, соответственно. После входа увидим страницу с общими данными мониторинга.
Теперь общую информацию по настройке агентов Zabbix
Пользователи (роли)
Вместо привычного понятия пользователей, PostgreSQL использует концепцию ролей. Несмотря на определенные отличия, в целом можно определять роли как пользователей базы данных.
В зависимости от настройки, роль можно рассматривать как пользователя базы данных или как группу пользователей. Роли могут владеть объектами базы данных (например, таблицами) и выдавать другим ролям разрешения на доступ к этим объектам. Также можно предоставить одной роли членство в другой роли (схоже с добавлением пользователя в группу), чтобы одна роль могла использовать привилегии другой роли.
Как отмечалось выше, во время установки была автоматически создана роль postgres. Вы можете работать с СУБД из-под нее. Для этого переключитесь на сессию данного пользователя:
sudo su - postgres
После чего запустите консоль Postgres:
psql
После завершения работы вы сможете выйти из консоли Postgres командой :
postgres=# \q
Так как для каждой созданной роли Postgres предполагает наличие базы данных с таким же именем и по умолчанию подключается именно к ней, имеет смысл создавать новую роль для каждой базы. Кроме того, если имя роли совпадает с именем пользователя, созданного в системе Linux, подключение к БД также упрощается.
Создание новой роли
Создать роль из консоли системы (не psql) можно с помощью команды:
createuser -P --interactive
Ключ позволит сразу задать пароль пользователю, а запустит интерактивный режим для указания дополнительных параметров.
Система поочередно запросит имя новой роли, ее пароль и повтор пароля, а также позволит указать привилегии: сделать ли роль суперпользователем, должны ли быть права на создание баз данных и создание других ролей. Нажимайте y / n и Enter для выбора.
Создать роль из консоли Postgres можно с помощью команды CREATE ROLE.
При использовании этой команды без дополнительных опций пользователь будет создан без каких-либо привилегий, поэтому желательно сразу при создании роли указывать нужные привилегии. Полный список доступных опций можно просмотреть, выполнив:
\h CREATE ROLE
Чтобы создать новую роль выполните:
CREATE ROLE имя_роли WITH LOGIN CREATEDB CREATEROLE;
Далее задайте новому пользователю пароль:
\password имя_роли
Просмотр существующих ролей
Чтобы просмотреть созданных пользователей и их привилегии, перейдите в консоль Postgres:
psql
И выполните команду:
\du
Пример вывода:
List of roles Role name | Attributes | Member of -----------+------------------------------------------------------------+----------- postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {} tmweb | Create role, Create DB | {} tweb | Create role, Create DB | {}
Нажмите q, чтобы закрыть вывод, и \q, если нужно выйти из консоли Postgres.
dropuser имя_роли
Либо команду в консоли Postgres:
DROP ROLE имя_роли;
Смена пароля пользователя
Для смены пароля одной из ролей подключитесь к Postgres от суперпользователя (postgres или другой роли с такими привилегиями), после чего выполните:
ALTER USER имя_роли WITH PASSWORD 'новый_пароль';
Обратите внимание, что эта операция сохранится в файле вместе с паролем в открытом виде. Из соображений безопасности рекомендуется удалить соответствующую запись из файла
Как правило, файл размещается в директории . Проверить его расположение можно в терминале системы с помощью:
grep postgres /etc/passwd | cut -d ':' -f 6
Откройте файл, указав корректный путь к нему:
sudo nano /var/lib/postgresql/.psql_history
Удалите запись с паролем и сохраните изменения.
Миграция базы на PostgreSQL
В случае, если это не первая установка и у нас уже есть база, ее нужно перенести на новый сервер. Рассмотрим 2 варианта — база была на другом сервере PostgreSQL и универсальный (файловый вариант или другая СУБД).
С PostgreSQL на PostgreSQL
В данном случае процесс переноса заключается в создании дампа (backup) и его восстановления на новом сервере (restore). Необходимо учесть, что для корректного переноса данных, версии 1С должны совпадать.
Есть несколько инструментов по созданию резервных копий PostgreSQL и их восстановлению. Их описание выходит за рамки данной статьи — подробнее читайте инструкцию Резервное копирование PostgreSQL.
Универсальный способ миграции на PostgreSQL
Данный способ также подойдет и для миграции с PostgreSQL на PostgreSQL. Для начала, открываем нашу базу в конфигураторе на старом 1С — кликаем по Администрирование — Выгрузить информационную базу:
Выбираем путь для сохранения файла. Ждем окончания выгрузки и переносим полученный файл на компьютер с толстым клиентом 1С (если для нового сервера мы используем другой компьютер с 1С).
Открываем конфигуратор для созданной в PostgreSQL базы — кликаем Администрирование — Загрузить информационную базу:
… и выбираем выгруженный ранее файл. Дожидаемся его загрузки — система потребует перезапустить 1С — соглашаемся. Ждем новой загрузки. После можно пользоваться базой 1С на новом сервере.
Базовая настройка PostgreSQL 10 в Linux Ubuntu Server
После установки нам необходимо выполнить базовую настройку PostgreSQL 10, например: создать пользователя, указать какие сетевые интерфейсы будет прослушивать сервер, а также разрешить подключение по сети. Начнем мы с создания пользователя и базы данных.
Создание пользователя и базы данных в PostgreSQL
После установки, к серверу PostgreSQL мы можем подключиться только с помощью системного пользователя postgres, причем без пароля. Для этого переключаемся на пользователя postgres (учетная запись в Ubuntu создана автоматически во время установки PostgreSQL).
su - postgres
Запускаем psql — это консоль управления PostgreSQL.
psql
Сначала зададим пароль для пользователя postgres.
password postgres
Затем создаем нового пользователя на сервере PostgreSQL, так как работать от имени postgres крайне не рекомендуется.
create user testuser with password '123456';
где, testuser – это имя пользователя, ‘123456’ – это его пароль.
Далее давайте создадим базу данных.
create database testdb;
где, testdb – это имя новой базы данных.
Теперь давайте дадим права на управление БД нашему новому пользователю.
grant all privileges on database testdb to testuser;
Все готово, выходим из консоли.
q
Для проверки, давайте подключимся к PostgreSQL от имени нового пользователя, на предложение о вводе пароля вводим пароль от новой учетной записи.
psql -h localhost testdb testuser
Работает. Для выхода снова набираем q.
q
Для переключения обратно на root вводим exit.
exit
Разрешаем подключение к PostgreSQL по сети
По умолчанию PostgreSQL прослушивает только адрес localhost, поэтому для того чтобы мы могли подключаться по сети, нам нужно указать какие сетевые интерфейсы будет просушивать PostgreSQL. Я для примера укажу, что прослушивать нужно все доступные интерфейсы. Если у Вас несколько сетевых интерфейсов, и Вы хотите, чтобы PostgreSQL использовал только один конкретный, то Вы его можете указать именно здесь.
Для этого открываем файл postgresql.conf, например редактором nano.
nano /etc/postgresql/10/main/postgresql.conf
Находим следующую строку.
#listen_addresses = 'localhost'
и заменяем на (вместо звездочки Вы в случае необходимости указываете IP адрес нужного интерфейса).
listen_addresses = '*'
Сохраняем изменения сочетанием клавиш CTRL+O и подтверждаем нажатием Enter, затем просто закрываем редактор nano сочетанием клавиш CTRL+X.
Теперь давайте разрешим подключение из сети 10.0.2.0/24 с методом аутентификации md5. Для этого открываем файл pg_hba.conf
nano /etc/postgresql/10/main/pg_hba.conf
Ищем вот такие строки.
И вносим следующие изменения (если IPv6 Вы не будете использовать, то можете закомментировать соответствующие строки знаком #).
Где, 10.0.2.0/24 адрес сети, из которой будет происходить подключение к текущему серверу PostgreSQL. Сохраняем изменения сочетанием клавиш CTRL+O, подтверждаем нажатием Enter и закрываем редактор nano сочетанием клавиш CTRL+X.
Перезапускаем PostgreSQL
systemctl restart postgresql
Все, установка и настройка PostgreSQL закончена, можете подключаться к серверу из сети клиентским приложением. Пока, надеюсь, материал был Вам полезен!
PostgreSQL – кроссплатформенная СУБД с расширенной функциональностью, и открытым исходным кодом. Она совместима со многими операционными системами. Чтобы установить PostgreSQL на Ubuntu, потребуется уже развернутая операционная система, пользователь с привилегиями sudo и базовый файрвол.
В статье рассмотрим установку, настройку и удаление на Ubuntu PostgreSQL версии 11.1.
Установка 1С:Предприятие на Ubuntu
Свою настройку сервера 1С на Linux начнём с установки 1С:Предприятие. Установочные пакеты можно загрузить с сайта https://releases.1c.ru. Для этого у вас должна быть активна учётная запись. В принципе, файлы можно скачать где-то в интернете и без неё, но так как сервер 1С нужно регулярно обновлять, без своей учётной записи будет неудобно. Загрузить нужно файл Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем.
Скопируйте файл на Ubuntu Server. Но перед тем, как начать установку 1С, выполним некоторые подготовительные действия в системе. Нам нужно установить шрифты mscorefonts.
sudo apt install ttf-mscorefonts-installer fontconfig
Во время установки шрифтов, идёт обращение к различным внешним серверам для загрузки файлов. Бывает так, что какое-то соединение отваливается по таймауту и не понятно, выполнилась ли установка шрифтов корректно. В этом случае установку mscorefonts можно перезапустить, чтобы получить гарантированно положительный результат:
sudo apt reinstall ttf-mscorefonts-installer
Проверить, всё ли прошло удачно, можно следующей командой:
sudo fc-cache -f -v
Установим еще несколько пакетов, которые нам пригодятся в дальнейшем:
# sudo apt install imagemagick curl
Для корректной работы сервера 1С на Ubuntu необходимо настроить кодировку локали на ru_RU.UTF-8 UTF-8. Делается это с помощью утилиты dpkg-reconfigure.
# sudo dpkg-reconfigure locales
Её же указываем в качестве Default. Перезайдите в систему, чтобы применилась новая локаль. Проверить, применилась ли русская локаль, можно просто запустив Midnight Commander. Всё управление будет на русском языке.
Дальше будем устанавливать сам сервер 1С. Для этого распакуйте загруженный ранее пакет.
mkdir 1csrv && mv deb64_8_3_19_1264.tar.gz 1csrv && cd 1csrv tar -xzvf deb64_8_3_19_1264.tar.gz
У вас должен быть стандартный набор пакетов:
Устанавливаем необходимые нам пакеты 1С сервера:
sudo dpkg -i 1c-enterprise-8.3.19.1264-common_8.3.19-1264_amd64.deb 1c-enterprise-8.3.19.1264-server_8.3.19-1264_amd64.deb 1c-enterprise-8.3.19.1264-ws_8.3.19-1264_amd64.deb
На момент моей установки, актуальная версия 1с была 8.3.19.1264. Не забудьте заменить её на свою. Копируем вручную конфиг для управления службой srv1cv83. Почему-то никто не удосужился написать юнит для systemd, что выглядит странно.
sudo ln -s /opt/1cv8/x86_64/8.3.19.1264/srv1cv83 /etc/init.d/srv1cv83 sudo systemctl daemon-reload
Запускаем сервер 1С и добавляем его в автозагрузку.
sudo systemctl start srv1cv83 sudo systemctl enable srv1cv83
Убедимся, что сервис успешно запущен:
sudo systemctl status srv1cv83
На всякий случай можно проверить, слушает ли служба tcp порты.
sudo apt install net-tools sudo netstat -tulnp
На вид всё в порядке. Сервер 1С успешно установлен на Ubuntu, сконфигурирован и запущен. Готов принимать подключения от клиентов. Далее необходимо заняться настройкой firewall. Так как я не знаю, используете ли вы его и какой конкретно, то не буду давать команд на управление правилами или отключение. Эта тема выходит за рамки данной статьи. Если делаете тестовую установку, то firewall можно просто отключить.
Connect to Postgres with the New User
Let’s assume that you have a Linux system account called (you can create one by typing: ), and that you have created a Postgres role and database also called .
You can change to the Linux system account by typing:
<pre>
sudo -i -u <span class=“highlight”>test1</span>
</pre>
You can then connect to the database as the Postgres role by typing:
This will log in automatically assuming that all of the components have been configured.
If you want your user to connect to a different database, you can do so by specifying the database like this:
<pre>
psql -d <span class=“highlight”>postgres</span>
</pre>
You can get information about the Postgres user you’re logged in as and the database you’re currently connected to by typing:
This can help remind you of your current settings if you are connecting to non-default databases or with non-default users.
Install PostgreSQL from PostgreSQL Apt Repository
PostgreSQL is available in all Ubuntu versions by default, but it doesn’t guarantee automatic updates when new releases come out. The local repository only has «snapshots» of a specific version. The best practice is to install the software from the PostgreSQL Apt Repository.
The PostgreSQL Apt Repository provides the latest PostgreSQL version, as well as all previous server packages, extensions, and modules.
Step 1: Add PostgreSQL Repository
To install from the official repository, you first need to add it to your system.
Import the GPG repository key with the commands:
Then, add the PostgreSQL repository by typing:
Step 2: Update the Package List
After adding the official PostgreSQL repository, make sure to update the package list. Doing this ensures you install the latest PostgreSQL package.
Step 3: Install PostgreSQL
To install PostgreSQL and the PostgreSQL contrib package (which provides additional features), use the following command:
By default, the software creates a postgres user, once you successfully install the database system. This user account has the default ‘postgres’ role.
Установка PostgreSQL в Ubuntu
PostgreSQL доступен в репозиториях Ubuntu по умолчанию. Просто используйте команду apt для установки PostgreSQL. Наиболее распространенными установленными пакетами являются PostgreSQL server, client, pgadmin, а также библиотеки.
Для установки конкретной версии вы можете использовать PostgreSQL Apt repository.
Чтобы установка PostgreSQL Ubuntu прошла гладко, выполните следующие действия.
Во-первых, убедитесь, что ваша система находится в актуальном состоянии, выполнив следующую команду.
Установите пакет Postgres, а затем пакет — contrib, он добавит дополнительные утилиты и функциональные возможности.
После завершения установки PostgreSQL запустите службу PostgreSQL. Это можно сделать командой которая написана ниже.
Также включите автоматический запуск службы PostgreSQL при загрузке системы. Делается это командой.
Запуск и включение службы postgres
После установки вы можете проверить состояние PostgreSQL, выполнив следующую команду.
Статус службы Postgres
По умолчанию пользователь Postgres создается во время установки. Чтобы получить доступ к оболочке Postgres, сначала переключитесь на пользователя Postgres.
Теперь введите команду psql,
Выполнение команд в оболочке Postgres
Для проверки версии PostgreSQL выполните следующую команду:
или
Создание роли в PostgreSQL
Для авторизации и аутентификации Postgres использует понятие “роли”. Которое в некоторых отношениях похоже на учетные записи Unix. Во время установки Postgres настраивается таким образом, чтобы использовать аутентификацию ident. Идентификация Ident связывает роль Postgres с соответствующими системными учетными записями Linux / Unix. Только суперпользователи и юзеры с ролью «CREATEROLE” отвечают за создание новых ролей.
Чтобы создать новую роль например с именем john, введите следующую команду в оболочке PostgreSQL.
Создание базы данных в PostgreSQL
Для создания новой базы данных требуется программа PostgreSQL database shell (psql). Войдите в оболочку psql и введите следующую команду, чтобы создать пользователя и установить пароль. Здесь я собираюсь создать имя пользователя jacky с паролем mystrongpassword. Вы можете создать свой собственный.
Создайте базу данных (например, gallary), используя следующую команду,
Предоставьте доступ к БД которую только что создали.. Здесь я собираюсь предоставить все права на базу данных gallery, чтобы пользователь jacky мог в ней работать.
Чтобы выйти из оболочки PostgreSQL требуется ввести команду q и нажать enter.
Создание пользователя и базы данных
Включение удаленного доступа к PostgreSQL
По умолчанию PostgreSQL слушает на интерфейсе 127.0.0.1. Если вы хотите получить доступ к базе данных из другого места. Тогда вам требуется настроить PostgreSQL для прослушки различных сетевых интерфейсов. Чтобы настроить PostgreSQL для различных интерфейсов, откройте конфигурационный файл PostgreSQL с помощью nano или другим текстовым редактором. Я буду использовать редактор Vim.
В конфигурационном файле найдите запись listen_addresses, находится она в «Connection Settings». Раскомментируйте строку и измените localhost на ‘*’. Это даст команду PostgreSQL прослушивать все сетевые интерфейсы для входящих подключений.
Включение удаленного подключения в postgres
Сохраните свою конфигурацию и перезапустите сервер PostgreSQL, чтобы изменения отразились в БД.
Теперь можно проверить прослушивает ли PostgreSQL другой интерфейс. Для этого выполните следующую команду.
Состояние прослушивания порта Postgres
Если вы включили брандмауэр UFW на сервере, тогда вам необходимо открыть порт 5432 для входящих TCP — соединений. Чтоб сделать это выполните команду.
Также проверьте правило брандмауэра UFW, делается это командой.
Конфигурация Postgres ufw
Заключение
В этом руководстве вы узнали, как установить сервер PostgreSQL на Ubuntu 20.04. Кроме того, вы также узнали, как привязать PostgreSQL к различным сетевым интерфейсам, чтобы принимать соединения от удаленного клиента.
Install PostgreSQL from Local Ubuntu Repository
If you prefer installing PostgreSQL from the local Ubuntu repository, bear in mind that it is most likely not going to be the latest version of the package.
Step 1: Check Available PostgreSQL Version
Before you decide whether you want to set up PostgreSQL from the Ubuntu repository, verify which versions are available. Update the repository and then run the command:
The output provides all the necessary information about the package, including the release number and size.
Step 2: Install PostgreSQL Package
If you are happy with the PostgreSQL version accessible from the local repository, use the following command to install the package:
With these simple steps, you have successfully installed PostgreSQL on Ubuntu 18.04.