Выбираем первый пункт: Install CentOS 7 и жмем enter. После загрузки инсталлера, нас встречает окно с выбором языка, который будет использоваться во время установки. Я всегда выбираю Еnglish, мне так привычнее.
Дальше загружается страница с выбором основных параметров установки. Она уже будет отличаться в зависимости от типа ISO образа, с которого происходит установка центос.
CentOS 7 minimal
Если вы используете диск centos minimal iso, то увидите следующий экран:
Дальше загружается страница с выбором основных параметров установки. Она уже будет отличаться в зависимости от типа ISO образа, с которого происходит установка центос.
CentOS 7 minimal
Если вы используете диск centos minimal iso, то увидите следующий экран.
Здесь вам предлагают указать параметры установки. Восклицательным знаком помечен раздел, без настройки которого продолжение невозможно. Для настройки доступны следующие параметры установки:
Для продолжения установки необходимо выполнить как минимум разбивку жесткого диска. Без этого продолжение установки невозможно. Но мы пройдемся по всем параметрам и установим необходимые для нас значения.
Итак, нажимаем на DATE & TIME и настраиваем параметры времени:
Указываем регион.
Это возможно сделать только если вы уже настроили сетевые параметры. Если нет, то вернитесь к этой настройке позже.
заходим под root и вводим
yum update -y && yum upgrade -y && yum install openssh-server nano mc -y ^&& reboot
nano /etc/sysconfig/selinux
подключаемся по SSH
Приступаем к установке 1с Сервера x32
Установка дополнительного ПО для настройки сервера:
Выполняем последовательно команды:
yum install rpm-build wget glibc-devel bison flex readline-devel zlib-devel openssl-devel pam-devel gettext gcc make icu libicu libicu-devel
yum install ImageMagick
yum install t1utils
yum install unixODBC
yum install ttf2pt1
yum install ttmkfdir cabextract rpm-build
yum install chkfontpath
cd /root/rpmbuild/SPECS
-
rpmbuild -bb msttcorefonts-2.0-1.
spec
cd rpmbuild/RPMS/noarch
rpm -ivh msttcorefonts-2.0-1.noarch.rpm
cd /usr/share/fonts/msttcorefonts
mkfontscale
mkfontdir
Создаем символические ссылки на библиотеки libicu:
ln -s /usr/lib64/libicui18n.so /usr/local/lib64/libicui18n.so.46
ln -s /usr/lib64/libicudata.so /usr/local/lib64/libicudata.so.46
ln -s /usr/lib64/libicuuc.so /usr/local/lib64/libicuuc.so.46
Ставим PostgreSQL
-
chkconfig postgresql-9.5 on
Закачиваем сервер 1с
scp /home/unix/1/8.3.7.2008_rpm.tar.gz root@192.168.200.68:/home/unix
Распаковываем
tar zxvf *.tar.gz
Устанавливаем
yum localinstall *.rpm
chkconfig srv1cv83 on
Оптимизируем postgresql под 1с
Ниже перечислены основные параметры, на которые следует обратить внимание при оптимизации производительности PostgreSQL.
shared_buffers
Объём совместно используемой памяти, выделяемой PostgreSQL для кэширования данных, определяется числом страниц (shared_buffers) по 8 килобайт каждая. Следует учитывать, что операционная система сама кеширует данные, поэтому нет необходимости отводить под кэш всю наличную оперативную память. Размер shared_buffers зависит от многих факторов, для начала можно принять следующие значения:
8–16 Мб – Обычный настольный компьютер с 512 Мб и небольшой базой данных
80–160 Мб – Небольшой > сервер, предназначенный для обслуживания базы данных с объёмом оперативной памяти 1 Гб и базой данных около 10 Гб.
400 Мб – Сервер с несколькими процессорами, с объёмом памяти в 8 Гб и базой данных занимающей свыше 100 Гб обслуживающий несколько сотен активных соединений одновременно .
work_mem
Под каждый запрос выделяется ограниченный объём памяти для работы. Этот объём используется для сортировки, объединения и других подобных операций. При превышении этого объёма сервер начинает использовать временные файлы на диске, что может существенно снизить производительность. Оценить необходимое значение дляwork_mem можно разделив объём доступной памяти (физическая память минус объём занятый под другие программы и под совместно используемые страницы shared_buffers) на максимальное число одновременно используемых активных соединений.
maintenance_work_mem
Эта память используется для выполнения операций по сбору статистики (ANALYZE), сборке мусора (VACUUM), создания индексов (CREATE INDEX) и добавления внешних ключей. Размер выделяемой под эти операции памяти должен быть сравним с физическим размером самого большого индекса на диске.
effective_cache_size
PostgreSQL в своих планах опирается на кэширование файлов, осуществляемое операционной системой. Этот параметр соответствует максимальному размеру объекта, который может поместиться в системный кэш. Это значение используется только для оценки. effective_cache_size можно установить в 1/2 - 2/3 от объёма имеющейся в наличии оперативной памяти, если вся она отдана в распоряжение PostgreSQL.
Следующие параметры могут существенно увеличить производительность работы PostgreSQL. Однако их рекомендуется использовать только если имеются надежные ИБП и программное обеспечение, завершающее работу системы при низком заряде батарей.
fsync
Данный параметр отвечает за сброс данных из кэша на диск при завершении транзакций. Если установить его значение fsync=off то данные не будут записываться на дисковые накопители сразу после завершения операций. Это может существенно повысить скорость операций insert и update, но есть риск повредить базу, если произойдет сбой (неожиданное отключение питания, сбой ОС, сбой дисковой подсистемы).
synchronous_commit
Включает/выключает синхронную запись в лог файлы после каждой транзакции. Это защищает от возможной потери данных. Но это накладывает ограничение на пропускную способность сервера.
Если вашей системе не критична потенциально низкая возможность потери небольшого количества изменений при крахе системы, но необходимо обеспечить в несколько раз большую производительность по количеству транзакций в секунду. В этом случае можно установить этот параметр в off (отключение синхронной записи).
shared_buffers - Общий буфер сервера
Размер кэша чтения и записи PostgreSQL, общего для всех подключений. Если данные отсутствуют в кэше, производится чтение с диска (возможно, будут кэшированы ОС)
Если объём буфера недостаточен для хранения часто используемых рабочих данных, то они будут постоянно писаться и читаться из кэша ОС или с диска, что крайне отрицательно скажется на производительности.
Но это не вся память, требуемая для работы, не следует указывать слишком большое значение, иначе не останется памяти как для собственно выполнения запросов клиентов (а чем их больше тем выше потребление памяти), так и для ОС и прочих приложений, например, процесса сервера 1С. Так же сервер полагается и на кэш ОС и старается не держать в своём буфере то что скорее всего закэшировано системой.
Начальные рекомендации:
Средний объем данных, доступно 256-512Мб - значения 16-32Мб
Большой объем данных, доступно 1-4Гб - значения 64-256Мб или выше.
В тесте использовалось
shared_buffers = 512MB
work_mem - память для сортировки, агрегации данных и т.д.
Выделяется на каждый запрос, возможно по нескольку раз для сложных запросов. Если памяти недостаточно - PostgreSQL будет использовать временные файлы. Если значение слишком большое - может возникнуть перерасход оперативной памяти и ОС начнет использовать файл подкачки с соответствующим падением быстродействия.
Есть рекомендация при расчетах взять объем доступной памяти за вычетом shared_buffers, и поделить на количество одновременно исполняемых запросов. В случае сложных запросов делитель стоит увеличить, т.е. уменьшить результат. Для рассматриваемого случая из расчета 5 активных пользователей (2.5Гб-0.5Гб (shared_buffers))/5=400Мб. В случае если СУБД сочтет запросы достаточно сложными, или появятся дополнительные пользователи, потребуется значение уменьшить.
Для простых запросов достаточно небольших значений - до пары мегабайт, но для сложных запросов (а это типовой сценарий для 1С) потребуется больше. Рекомендация - для памяти 1-4Гб можно использовать значения 32-128Мб. В тесте использовал
work_mem = 128MB
maintenance_work_mem - память для команд сбора мусора, статистики, создания индексов.
Рекомендуется устанавливать значение 50-75% от размера самой большой таблицы или индекса, но чтобы памяти хватило для работы системы и приложений. Рекомендуется устанавливать значения больше чем work_mem. В тесте использовал
maintenance_work_mem = 192MB
temp_buffers - буфер под временные объекты, в основном для временных таблиц.
Можно установить порядка 16 МБ. В тесте использовал
temp_buffers = 32MB
effective_cache_size - примерный объем дискового кэша файловой системы.
Оптимизатор использует это значение при построении плана запроса, для оценки вероятности нахождения данных в кэше (с быстрым случайным доступом) или на медленном диске. В Windows текущий объем памяти, выделенной под кэш, можно посмотреть в диспетчере задач.
инициализируем базу
service postgresql-9.5 initdb
настраиваем config
nano /var/lib/pgsql/9.5/data/postgresql.conf
Открываем порты
2
firewall-cmd –permanent –add-port=5432/tcp
2
firewall-cmd –permanent –add-port=1540/tcp
2
firewall-cmd –permanent –add-port=1541/tcp
2
firewall-cmd –permanent –add-port=1560/tcp
2
firewall-cmd –permanent –add-port=80/tcp
Меняем под себя запускаем базу
Заходим меняем пароль
su - postgres
psql
postgres=# \password postgres
CREATE EXTENSION adminpack;
Настраиваем доступ
nano /var/lib/pgsql/9.5/data/pg_hba.conf
[…]
# TYPE DATABASE USER ADDRESS METHOD
# «local» is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 192.168.1.0/24 md5
# IPv6 local connections:
host all all ::1/128 md5
[…]
systemctl restart postgresql-9.5
nano /var/lib/pgsql/9.5/data/postgresql.conf
listen_addresses = '*'
port = 5432
systemctl restart postgresql-9.5
Устанавливаем phpphadmin
yum install phpPgAdmin httpd
настраиваем доступ
nano /etc/httpd/conf.d/phpPgAdmin.conf
[…]
Alias /phpPgAdmin /usr/share/phpPgAdmin
<Location /phpPgAdmin>
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
#Require host example.com
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order deny,allow
Allow from all
# Allow from .example.com
</IfModule>
</Location>
systemctl enable httpd
systemctl start httpd
vi /etc/phpPgAdmin/config.inc.php
Find the following line:
$conf['servers'][0]['host'] = '';
Change it as shown below:
$conf['servers'][0]['host'] = 'localhost';
And find the line:
$conf['extra_login_security'] = true;
Change the value to false:
$conf['extra_login_security'] = false;
Find the line:
$conf['owned_only'] = false;
Set the value as true.ru
$conf['owned_only'] = true;
Save and close the file. Restart postgresql service and Apache services.
Заходим на терминальный сервер запускаем сервер администрирования
подключаемся к sql серверу создаем базу
но сначала пропишем hostname в etc
nano /etc/hostname
sql.ismltd.local sql