1c un postgres instalēšana operētājsistēmā Windows. Instalējiet PostgreSQL. Ārēja datu avota pievienošana
Šis raksts nepretendē uz pilnīgu visu PostgreSQL konfigurācijas opciju prezentāciju, un salīdzinošajā testēšanā es neaptveru visus datu bāzes darbības režīmus. Interesentiem iesaku izpētīt grāmatu saitē
Ievads
Esmu daudz strādājis ar PostgreSQL un domāju, ka tā ir lieliska DBVS. Man ir vairāku gigabaitu darba datu bāze (nevis 1C), kas uzreiz apstrādā milzīgus datu apjomus. PostgreSQL lieliski izmanto indeksus, lieliski tiek galā ar paralēlām darba slodzēm, saglabāto procedūru funkcionalitāte ir lieliska, ir pieejami labi administrēšanas un veiktspējas rīki, un kopiena ir izveidojusi noderīgi komunālie pakalpojumi. Bet es biju pārsteigts, uzzinot, ka daudziem 1C administratoriem ir slikts viedoklis par PostgreSQL, ka tas ir lēns un tikko pārspēj datu bāzes faila versiju, un tikai MSSQL var glābt situāciju.
Pēc jautājuma izpētes es atradu daudzus rakstus par PostgreSQL soli pa solim instalēšanu manekeniem gan operētājsistēmā Linux, gan operētājsistēmā Windows. Bet lielākajā daļā rakstu ir aprakstīta instalēšana līdz "instalēšanai - izveidosim datu bāzi" un vispār neskar konfigurācijas jautājumu. Pārējos konfigurācija ir minēta tikai "norādīt šādas vērtības" līmenī, praktiski bez paskaidrojuma, kāpēc.
Un, ja “vienas pogas instalēšanas” pieeja ir piemērojama MSSQL un daudziem Windows produktiem kopumā, tad diemžēl tā neattiecas uz PostgreSQL. Noklusējuma iestatījumi ievērojami ierobežo tā atmiņas izmantošanu, lai to varētu instalēt pat kalkulatorā un tas netraucēs pārējās programmatūras darbībai. PostgreSQL ir jākonfigurē noteiktai sistēmai, un tikai tad tas var parādīt labāko. Īpaši smagos gadījumos varat noregulēt PostgreSQL, datu bāzes un failu sistēma viens otru, bet tas lielākā mērā attiecas uz Linux sistēmām, kur ir vairāk iespēju visu pielāgot.
Jāatgādina, ka 1C DBVS izstrādātāju PostgreSQL montāža nav piemērota, tikai samontēta no ielāpiem 1C pirmkodiem. Gatavus saderīgus komplektus piedāvā 1C (izmantojot ITS diskus un kontu tiem, kam ir atbalsta abonements) un EterSoft
Pārbaude tika veikta gadā Windows vide, taču visi konfigurācijas ieteikumi neattiecas uz platformu un attiecas uz jebkuru OS.
Testēšana un salīdzināšana
Pārbaudot, es neplānoju veikt testus visos darbības režīmos un scenārijos, tikai aptuvenu veiksmīgas konfigurācijas pārbaudi.
Testēšanai izmantoju šādu konfigurāciju:
Resursdatora mašīna: Win7, Core i5-760 2.8MHz, 4 kodoli, 12GB RAM, VMWare 10
Virtuālais: Win7 x64, 2 kodoli, 4 GB RAM, atsevišķa fiziska HDD datu bāzes mitināšanai (nevis SSD)
MSSQL Express 2014
PostgreSQL EtherSoft 9.2.1
1C 8.3.5 1383
Tika izmantota datubāze, dt-upload 780MB.
Pēc datu bāzes atjaunošanas:
faila lielums 1 CD faila versijā - 10 GB,
PostgreSQL datu bāzes lielums - 8 GB,
MSSQL datu bāzes izmērs ir 6,7 GB.
Pārbaudei izmantoju pieprasījumu pēc darījuma partnera līgumu parauga (21k) ar papildu rekvizītu atlasi no dažādiem reģistriem, katram līgumam faktiski tika izveidots atsevišķs paraugs no reģistriem. Es paņēmu konfigurāciju, kas bija pie rokas - stipri pārveidota, pamatojoties uz grāmatvedības 3.0.
Pārbaudes laikā es vairākas reizes izpildīju pieprasījumu ar vienu un diviem klientiem, līdz tika iegūti stabili rezultāti. Pirmos braucienus es ignorēju.
Testēšana ar vienu klientu:
Izlases ņemšana uz saimniekdatora no faila versijas ar datubāzi, kas ievietota SSD — 31c
Izvēloties no faila varianta iekšā virtuālā iekārta(Ar cietais disks) - 46s
Iztveršana no MSSQL datu bāzes — pirmā piegājiens — 25 s vai 9 s (acīmredzot atkarībā no DBVS kešatmiņas atbilstības) (DBVS procesa atmiņas patēriņš bija aptuveni 1,3 GB)
Iztveršana no PostgreSQL ar noklusējuma iestatījumiem - 43 s (atmiņas patēriņš nepārsniedza 80 MB vienam savienojumam)
Iztveršana no optimizētā PostgreSQL — 21 s (atmiņas patēriņš bija 120 MB uz vienu savienojumu)
Testēšana ar diviem klientiem:
Izlases ņemšana resursdatorā no faila versijas ar datubāzi, kas ievietota SSD — katrs 34 s
Paraugu ņemšana no faila versijas virtuālajā mašīnā (no cietā diska) - 56 s katrs
Izlase no MSSQL datu bāzes — 50 s vai 20 s (acīmredzot atkarībā no DBVS kešatmiņas atbilstības)
Izlase no PostgreSQL ar noklusējuma iestatījumiem - 60s katrs
Izlase no optimizēta PostgreSQL — katra 40 s
Testēšanas piezīmes:
- Pēc trešā kodola pievienošanas PostgreSQL un MSSQL varianti sāka darboties “divu klientu” testā gandrīz ar “viena klienta” testa izpildi, t.i. veiksmīgi paralēli. Kas viņiem neļāva paralēli veikt darbu pie diviem kodoliem, man palika noslēpums.
- MSSQL uzreiz aizņēma daudz atmiņas, PostgreSQL visos režīmos prasīja ievērojami mazāk, un gandrīz visu to atbrīvoja uzreiz pēc vaicājuma aizpildīšanas.
- MSSQL darbojas kā viens process. PostgreSQL palaiž atsevišķu procesu katram savienojumam + pakalpojumu procesiem. Tas ļauj pat 32 bitu variantam efektīvi izmantot atmiņu, apstrādājot pieprasījumus no vairākiem klientiem.
- PostgreSQL atmiņas palielināšana iestatījumos, kas pārsniedz tālāk norādītās vērtības, neizraisīja ievērojamu veiktspējas pieaugumu.
- Pirmie testi visos gadījumos aizņēma ilgāku laiku nekā turpmākajos mērījumos, speciālus mērījumus neveicu, bet MSSQL subjektīvi sāka ātrāk.
PostgreSQL konfigurēšana
Krievu valodā ir lieliska grāmata par PostgreSQL konfigurēšanu un optimizēšanu: ikvienam ziloņu mīļotājam ir jēga pievienot šo saiti grāmatzīmē. Grāmatā ir aprakstīti daudzi paņēmieni DBVS optimizēšanai, kļūmju izturīgas un sadalītas sistēmas izveidei. Bet tagad apskatīsim kaut ko, kas noderēs ikvienam – atmiņas lietojuma konfigurēšanu. PostgreSQL neizmantos vairāk atmiņas, nekā pieļauj iestatījumi, un ar noklusējuma iestatījumiem PostgreSQL izmanto minimālu atmiņu. Tajā pašā laikā nevajadzētu norādīt vairāk atmiņas, nekā ir pieejams lietošanai - sistēma sāks izmantot mijmaiņas failu ar visām no tā izrietošajām drausmīgajām sekām servera veiktspējai. ITS diskā ir sniegti vairāki padomi PostgreSQL iestatīšanai.
Operētājsistēmā Windows PostgreSQL konfigurācijas faili atrodas datu direktorija instalācijas direktorijā:
- postgresql.conf- galvenais fails ar DBVS iestatījumiem
- pg_hba.conf- fails ar piekļuves iestatījumiem klientiem. Jo īpaši šeit varat norādīt, kuri lietotāji, no kurām IP adresēm var izveidot savienojumu ar noteiktām datu bāzēm, un vai ir nepieciešams pārbaudīt lietotāja paroli, un, ja jā, ar kādu metodi.
- pg_ident.conf- fails ar lietotājvārdu konvertēšanu no sistēmas uz iekšējo (lielākajai daļai lietotāju tas, visticamāk, nebūs vajadzīgs)
Faili ir teksta, tos var rediģēt, izmantojot notepad. Rindas, kas sākas ar # tiek uzskatīti par komentāriem un tiek ignorēti.
Ar atmiņas ietilpību saistītos parametrus var papildināt ar sufiksiem kB, MB, GB - kilobaiti, megabaiti, gigabaiti, piemēram, 128MB. Laika intervālus aprakstošos parametrus var papildināt ar sufiksiem ms, s, min, h, d - milisekundes, sekundes, minūtes, stundas, dienas, piemēram, 5min
Ja esat aizmirsis Postgress paroli, tā nav problēma, varat to ierakstīt pg_hba.conf rinda:
Uzstādiet visu 127.0.0.1/32 uzticību
Un izveidot savienojumu ar jebkuru lietotāju (piemēram, postgres) uz DBVS vietējā datorā 127.0.0.1, nepārbaudot paroli.
Optimizācija atmiņas lietojums
Atmiņas izmantošanas iestatījumi atrodas postgresql.conf
Optimālās parametru vērtības ir atkarīgas no brīvā apjoma brīvpiekļuves atmiņa, datu bāzes lielums un atsevišķie datu bāzes elementi (tabulas un indeksi), vaicājumu sarežģītība (principā jāpieņem, ka vaicājumi būs diezgan sarežģīti - vairāki savienojumi vaicājumos ir tipisks scenārijs) un vaicājumu skaits. vienlaicīgi aktīvi klienti. Starp citu, PostgreSQL saglabā datu bāzu tabulas un indeksus atsevišķi faili (<каталог установки PG>\dati\bāze\<идентификатор БД>\), un objektu izmērus var novērtēt. Varat arī izmantot iekļauto utilītu pgAdmin, lai izveidotu savienojumu ar datu bāzi, izvērstu "Shēmas" - "publisks" un ģenerētu statistikas pārskatu elementam "Tabulas".
Tālāk es sniegšu aptuvenās vērtības, no kurām jūs varat sākt skaņošanu. Pēc sākotnējā iestatīšana Ieteicams darbināt serveri darba režīmos un uzraudzīt atmiņas patēriņu. Atkarībā no iegūtajiem rezultātiem var būt nepieciešams pielāgot parametru vērtības.
Iestatot serveri testēšanai, es paļāvos uz šādiem aprēķiniem:
Tikai 4 GB RAM. Patērētāji - Windows OS, 1C serveris, PostgreSQL un sistēmas diska kešatmiņa. Pieņēmu, ka DBVS var atvēlēt līdz 2,5 GB RAM
Vērtības var norādīt ar sufiksiem kB, MB, GB (vērtības kilobaitos, megabaitos vai gigabaitos). Pēc vērtību maiņas jums ir jārestartē PostgreSQL pakalpojums.
share_buffers — koplietots servera buferis
PostgreSQL lasīšanas un rakstīšanas kešatmiņas lielums, ko koplieto visi savienojumi. Ja dati nav kešatmiņā, tie tiek nolasīti no diska (iespējams, OS kešatmiņā).
Ja bufera lielums nav pietiekams, lai uzglabātu bieži izmantotos darba datus, tie tiks pastāvīgi rakstīti un lasīti no OS kešatmiņas vai diska, kas ārkārtīgi negatīvi ietekmēs veiktspēju.
Bet šī nav visa darbībai nepieciešamā atmiņa, jums nevajadzētu norādīt pārāk daudz liela nozīme, pretējā gadījumā nepaliks atmiņas gan klienta pieprasījumu faktiskai izpildei (un jo vairāk to ir, jo lielāks atmiņas patēriņš), gan OS un citām lietojumprogrammām, piemēram, 1C servera procesam. Serveris arī paļaujas uz OS kešatmiņu un cenšas nesaglabāt savā buferī to, kas, visticamāk, ir kešatmiņā sistēmā.
Izmantotais tests
share_buffers = 512 MB
darba_atmiņa- atmiņa šķirošanai, datu apkopošanai utt.
Piešķirts katram pieprasījumam, iespējams, vairākas reizes sarežģītiem pieprasījumiem. Ja nav pietiekami daudz atmiņas, PostgreSQL izmantos pagaidu failus. Ja vērtība ir pārāk liela, RAM var tikt pārmērīgi izmantota un OS sāks izmantot mijmaiņas failu ar atbilstošu veiktspējas samazināšanos.
Ir ieteikums, veicot aprēķinus, atņemt pieejamās atmiņas apjomu share_buffers, un dala ar vienlaicīgi izpildīto pieprasījumu skaitu. Sarežģītu vaicājumu gadījumā dalītājs jāpalielina, t.i. samazināt rezultātu. Aplūkojamajam gadījumam, pamatojoties uz 5 aktīviem lietotājiem (2,5 GB–0,5 GB (shared_buffers))/5 =400 MB. Ja DBVS uzskata, ka vaicājumi ir diezgan sarežģīti vai parādās papildu lietotāji, vērtība būs jāsamazina.
Vienkāršiem vaicājumiem pietiek ar mazām vērtībām - līdz pāris megabaitiem, bet sarežģītiem vaicājumiem (un tas ir tipisks 1C scenārijs) būs nepieciešams vairāk. Ieteikums - atmiņai 1-4GB varat izmantot vērtības no 32-128MB. Es to izmantoju testā
darba_atmiņa = 128 MB
apkopes_darba_atmiņa- atmiņa atkritumu savākšanas komandām, statistikai, indeksu izveidei.
Ieteicams iestatīt vērtību 50-75% no lielākās tabulas vai indeksa lieluma, bet tā, lai būtu pietiekami daudz atmiņas sistēmas un lietojumprogrammu palaišanai. Ieteicams iestatīt vērtības, kas ir lielākas par work_mem. Es to izmantoju testā
apkopes_darba_atmiņa = 192 MB
temp_buffers- buferis pagaidu objektiem, galvenokārt pagaidu tabulām.
Varat instalēt apmēram 16 MB. Es to izmantoju testā
temp_buffers = 32 MB
efektīvas_kešatmiņas_izmērs- aptuvenais failu sistēmas diska kešatmiņas lielums.
Optimizētājs izmanto šo vērtību, veidojot vaicājumu plānu, lai novērtētu iespējamību, ka dati tiks atrasti kešatmiņā (ar ātru nejaušu piekļuvi) vai lēnā diskā. Operētājsistēmā Windows pašreizējo kešatmiņai atvēlētās atmiņas apjomu var skatīt uzdevumu pārvaldniekā.
Autovakuums - "atkritumu savākšana"
PostgreSQL kā tipisks “versiju” DBVS pārstāvis (pretstatā bloķētajām), mainot datus, neatkarīgi nebloķē tabulas un ierakstus no transakciju nolasīšanas (1C gadījumā to dara pats 1C serveris). Tā vietā tiek izveidota modificētā ieraksta kopija, kas kļūst redzama turpmākajām transakcijām, savukārt esošie turpina redzēt datus, kas bija aktuāli to darījuma sākumā. Tā rezultātā tabulās uzkrājas novecojuši dati - iepriekšējās versijas mainīti ieraksti. Lai DBVS izmantotu atbrīvoto vietu, ir jāveic “atkritumu savākšana” - jānosaka, kuri no ierakstiem vairs netiek izmantoti. To var izdarīt tieši ar SQL komandu VAKUUMS vai gaidiet, kamēr tabulu apstrādās automātiskais atkritumu savācējs - AUTOVAKUUMS. Tāpat līdz noteiktai versijai atkritumu savākšana bija saistīta ar statistikas apkopošanu (optimāla vaicājumu plāna sastādīšanai plānotājs izmanto datus par ierakstu skaitu tabulās un indeksēto lauku vērtību sadalījumu). No vienas puses, atkritumu savākšana jāveic tā, lai tabulas neaugtu un efektīvi neizmantotu diska vietu. No otras puses, pēkšņi sākta atkritumu savākšana rada papildu slodzi diskam un tabulām, kas noved pie vaicājuma izpildes laika palielināšanās. Līdzīgu efektu rada automātiska statistikas apkopošana (protams, to var palaist ar komandu ANALIZĒT vai kopā ar atkritumu savākšanu VAKUUMA ANALĪZE). Un, lai gan PostgreSQL uzlabo šos mehānismus no versijas uz versiju, lai samazinātu Negatīvā ietekme par veiktspēju (piemēram, iepriekšējās versijās atkritumu savākšana pilnībā bloķēja piekļuvi tabulai, kopš versijas 9.0 darbojas VAKUUMS paātrināts), šeit ir kaut kas jākonfigurē.
Autovakuumu var pilnībā atspējot ar šādu parametru:
autovakuums = izslēgts
Turklāt, lai Autovacuum darbotos, ir nepieciešams parametrs track_counts = on, pretējā gadījumā tas nedarbosies.
Pēc noklusējuma abas opcijas ir iespējotas. Patiesībā autovakuumu nevar pilnībā atslēgt - pat ar autovakuumu = izslēgts, dažreiz (pēc liela darījumu skaita) sāksies autovakuums.
komentēt: VAKUUMS parasti nesamazina tabulas faila lielumu, tikai atzīmē brīvās zonas, kas pieejamas atkārtotai izmantošanai. Ja vēlaties fiziski atbrīvot lieko vietu un samazināt aizņemto vietu diskā, jums būs nepieciešama komanda VAKUUMS PILNS. Šī opcija bloķē piekļuvi tabulai, kamēr tā darbojas, un parasti tā nav nepieciešama. Plašāku informāciju par komandas VACUUM lietošanu var atrast dokumentācijā (angļu valodā).
Ja automātiskais vakuums nav pilnībā atspējots, varat konfigurēt tā ietekmi uz vaicājuma izpildi, izmantojot šādus parametrus:
autovacuum_max_workers- maksimālais paralēli notiekošo tīrīšanas procesu skaits.
autovacuum_naptime - minimālais intervāls, par kuru mazāks autovakuums nesāksies. Noklusējums ir 1 minūte. Varat to palielināt, tad, ja dati mainās bieži, analīze tiks veikta retāk.
autovacuum_vacuum_threshold, - mainīto vai dzēsto ierakstu skaits tabulā, kas nepieciešams, lai sāktu atkritumu savākšanas procesu VAKUUMS vai vācot statistiku ANALIZĒT. Pēc noklusējuma ir 50.
autovacuum_vacuum_scale_factor , autovacuum_analyze_scale_factor - tabulas lieluma koeficients ierakstos, kas pievienoti autovacuum_vacuum_threshold Un autovacuum_analyze_threshold attiecīgi. Noklusējuma vērtības ir attiecīgi 0,2 (t.i., 20% no ierakstu skaita) un 0,1 (10%).
Apskatīsim piemēru ar tabulu ar 10 000 ierakstiem. Pēc tam ar noklusējuma iestatījumiem pēc 50+10000*0.1=1050 mainītiem vai dzēstiem ierakstiem tiks sākta statistikas vākšana ANALIZĒT, un pēc 2050. gada izmaiņām - atkritumu izvešana VAKUUMS.
Ja palielināsiet slieksni un scale_factor, uzturēšanas procesi darbosies retāk, bet mazas tabulas var ievērojami palielināties. Ja datubāze galvenokārt sastāv no mazām tabulām, kopējais diska vietas patēriņa pieaugums var būt ievērojams, tāpēc varat palielināt šīs vērtības, bet saprātīgi.
Tādējādi var būt lietderīgi palielināt intervālu autovacuum_naptime un nedaudz palielināt slieksni un skalas_faktoru. Ielādētās datu bāzēs var būt alternatīva ievērojami palielināt skalas_faktoru (vērtība 1 ļaus tabulām “uzbriest” divas reizes) un iestatīt plānotājam ikdienas izpildi. VAKUUMA ANALĪZE minimālas datu bāzes noslodzes periodos.
default_statistics_target - piešķir komandas savāktās statistikas apjomu ANALIZĒT. Noklusējuma vērtība ir 100. Lielākas vērtības palielina komandas ANALYZE izpildes laiku, bet ļauj plānotājam izveidot efektīvākus vaicājumu plānus. Ir ieteikumi palielināt līdz 300.
Veiktspēju var kontrolēt AUTOVAKUUMS, padarot to garāku, bet mazāk noslogojot sistēmu.
vacuum_cost_page_hit- “naudas soda” lielums bloka apstrādei, kas atrodas Share_buffers. Saistīts ar nepieciešamību bloķēt piekļuvi buferim. Noklusējuma vērtība 1
vacuum_cost_page_miss — "naudas soda" lielums bloka apstrādei diskā. Saistīts ar bufera bloķēšanu, datu meklēšanu buferī, datu nolasīšanu no diska. Noklusējuma vērtība 10
vacuum_cost_page_dirty- “naudas soda” lielums par bloka modifikāciju. Saistīts ar nepieciešamību atiestatīt modificētos datus diskā. Noklusējuma vērtība 20
Vacuum_cost_limit- maksimālais “naudas sodu” apjoms, pēc kura montāžas procesu var “iesaldēt” uz vakuuma_izmaksas_aizkavēšanās laiku. Noklusējums 200
vakuuma_izmaksu_aizkavēšanās- laiks “iesaldēt” atkritumu savākšanas procesu, sasniedzot vacuum_cost_limit. Noklusējuma vērtība 0ms
autovacuum_vacuum_cost_delay- laiks “iesaldēt” atkritumu savākšanas procesu autovakuumam. Noklusējums ir 20 ms. Ja iestatīts uz -1, tiks izmantota vērtība vacuum_cost_delay
autovacuum_vacuum_cost_limit- autovakuuma "naudas soda" maksimālais lielums. Noklusējuma vērtība -1 — tiek izmantota vacuum_cost_limit vērtība
Ziņots par lietošanu vacuum_cost_page_hit = 6, Vacuum_cost_limit = 100, autovacuum_vacuum_cost_delay = 200 ms samazina AUTOVACUUM ietekmi līdz pat 80%, bet trīskāršo tā izpildes laiku.
Diska ierakstīšanas iestatīšana
Kad transakcija ir pabeigta, PostgreSQL vispirms ieraksta datus īpašā transakciju žurnālā WAL (Write-ahead log), un pēc tam datu bāzē pēc tam, kad tiek garantēta žurnāla datu ierakstīšana diskā. Noklusējuma mehānisms ir fsync, kad PostgreSQL piespiedu kārtā izskalo datus (žurnālu) no OS diska kešatmiņas diskā, un tikai pēc veiksmīgas rakstīšanas (žurnāla) klients tiek informēts, ka transakcija ir veiksmīgi pabeigta. Darījumu žurnāla izmantošana ļauj pabeigt darījumu vai atjaunot datu bāzi, ja datu rakstīšanas laikā rodas kļūme.
Noslogotās sistēmās ar lielu rakstīšanas apjomu var būt lietderīgi pārvietot darījumu žurnālu uz atsevišķu fizisko disku (bet ne uz citu tā paša diska nodalījumu!). Lai to izdarītu, ir jāaptur DBVS, jāpārvieto pg_xlog direktorijs uz citu vietu un jāizveido simboliska saite vecajā vietā, piemēram, izmantojot utilītu junction. Far Manager (Alt-F6) var arī izveidot saites. Šajā gadījumā jums ir jāpārliecinās, vai jaunajai atrašanās vietai ir piekļuves tiesības lietotājam, kurš izmanto PostgreSQL (parasti postgres).
Ja ir daudz datu modifikācijas darbību, iespējams, būs jāpalielina vērtība checkpoint_segments, kas kontrolē datu apjomu, kas var gaidīt, līdz tie tiks pārsūtīti no žurnāla uz pašu datu bāzi. Noklusējuma vērtība ir 3. Jāņem vērā, ka žurnālam tiek atvēlēta vieta, kas aprēķināta pēc formulas (checkpoint_segments * 2 + 1) * 16 MB, kam ar vērtību 32 jau būs nepieciešams vairāk nekā 1 GB diska telpa.
PostgreSQL izskalo datus no OS failu kešatmiņas diskā pēc katra rakstīšanas transakcijas pabeigšanas. No vienas puses, tas garantē, ka dati diskā vienmēr ir atjaunināti, no otras puses, ar lielu darījumu skaitu, veiktspēja samazinās. Pilnībā atspējot fsync iespējams, norādot
fsync=off
full_page_writes = izslēgts
To var izdarīt tikai tad, ja 100% uzticaties aprīkojumam un UPS (avots nepārtrauktās barošanas avots). Pretējā gadījumā sistēmas avārijas gadījumā pastāv risks iegūt iznīcinātu datu bāzi. Un jebkurā gadījumā nenāktu par ļaunu arī RAID kontrolieris ar akumulatoru nerakstīto datu atmiņas barošanai.
Noteikta alternatīva varētu būt parametra izmantošana
synchronous_commit = izslēgts
Šādā gadījumā pēc veiksmīgas atbildes, lai pabeigtu darījumu, var paiet zināms laiks, līdz darījums tiek droši ierakstīts diskā. Pēkšņas izslēgšanas gadījumā datu bāze netiks iznīcināta, bet dati no nesenajiem darījumiem var tikt zaudēti.
Ja pilnībā neatspējojat fsync, parametrā varat norādīt sinhronizācijas metodi. Raksts no ITS diska attiecas uz utilītu pg_test_fsync, taču tas netika atrasts manā PostgreSQL būvējumā. Saskaņā ar 1C, viņu gadījumā operētājsistēmā Windows šī metode izrādījās optimāla open_datasync(acīmredzot, šī ir metode, kas tiek izmantota pēc noklusējuma).
Ja tiek izmantotas daudzas nelielas rakstīšanas transakcijas (1C gadījumā tas var būt direktorija masveida atjaunināšana ārpus darījuma), parametru commit_delay (darījuma pabeigšanas aizkaves laiks mikrosekundēs, noklusējuma 0) un commit_siblings (noklusējuma 5) kombinācija. var palīdzēt. Ja opcijas ir iespējotas, transakcijas pabeigšana var tikt aizkavēta ar commit_delay if Šis brīdis Ir izpildīti vismaz commit_siblings darījumi. Šajā gadījumā visu pabeigto darījumu rezultāts tiks rakstīts kopā, lai optimizētu ierakstīšanu diskā.
Citi parametri, kas ietekmē veiktspēju
wal_buffers- atmiņas apjoms share_buffers darījumu žurnālu uzturēšanai. Ieteikums: ja ir 1–4 GB pieejamās atmiņas, izmantojiet vērtības 256 KB–1 MB. Dokumentācijā teikts, ka, izmantojot vērtību "-1", vērtība tiek automātiski pielāgota atkarībā no share_buffers vērtības.
random_page_cost- nejaušas nolasīšanas “izmaksas”, ko izmanto, meklējot datus, izmantojot indeksus. Noklusējums ir 4.0. Vienība ir secīgas datu piekļuves laiks. Ātriem disku masīviem, īpaši SSD, ir lietderīgi samazināt vērtību; šajā gadījumā PostgreSQL aktīvāk izmantos indeksus.
Grāmatai saitē ir daži citi parametri, kurus var konfigurēt. Ir arī ļoti ieteicams izlasīt PostgreSQL dokumentāciju par konkrētu parametru piešķiršanu.
Ir ieteicams mainīt parametrus no sadaļas QUERY TUNING, īpaši tos, kas saistīti ar aizliegumu plānotājam izmantot noteiktas meklēšanas metodes, tikai tad, ja jums ir pilnīga izpratne par to, ko jūs darāt. Ir ļoti vienkārši optimizēt viena veida vaicājumus un sabojāt visu pārējo veiktspēju. Vairuma parametru maiņas efektivitāte šajā sadaļā ir atkarīga no datubāzē esošajiem datiem, šo datu vaicājumiem (t.i., cita starpā izmantotās 1C versijas) un DBVS versijas.
Secinājums
PostgreSQL ir jaudīga DBVS prasmīgās rokās, taču tai nepieciešama rūpīga konfigurēšana. To var izmantot kopā ar 1C un iegūt pienācīgu veiktspēju, un tā brīvais raksturs būs ļoti patīkams bonuss.
Apsveicami ir kritika un papildinājumi šim rakstam.
Noderīgas saites
http://postgresql.leopard.in.ua/ - grāmatu vietne " Darbs ar PostgreSQL konfigurāciju un mērogošanu ", manuprāt, vispilnīgākais un saprotamākais ceļvedis PostgreSQL konfigurēšanai un administrēšanai
http://etersoft.ru/products/postgre — šeit varat lejupielādēt ar 1C saderīgu PostgreSQL versiju operētājsistēmai Windows un dažādus Linux izplatījumus un versijas. Tiem, kuriem nav ITS abonementa vai kuriem nepieciešama versija Linux versija, kas nav parādīta vietnē v8.1c.ru.
http://www.postgresql.org/docs/9.2/static/ - oficiālā PostgreSQL dokumentācija (angļu valodā)
Raksti no ITS diska par PostgreSQL iestatīšanu
Raksta rediģēšanas vēsture
- 29.01.2015 - publicēta sākotnējā versija
- 31.01.2015 - raksts papildināts ar sadaļu AUTOVACUUM, pievienota saite uz oriģinālo dokumentāciju.
Nākotnē esmu iecerējis pārbaudīt DBVS darbību datu pievienošanas un maiņas režīmā.
Uzstādīsim kompāniju no Postgres Professional firmas. Lapā ar 1C:Enterprise versiju mēs atradīsim informāciju par jaunākās PostgreSQL versijas instalēšanu operētājsistēmā CentOS 7.
Savienosim krātuves un instalēsim PostgreSQL 9.6:
Sudo rpm -ivh http://1c.postgrespro.ru/keys/postgrespro-1c-centos96.noarch.rpm sudo yum makecache sudo yum instalēt postgresql-pro-1c-9.6
PostgreSQL pamata iestatīšana
Mēs inicializējam pakalpojumu datu bāzes ar lokalizāciju krievu valodā:
Su postgres /usr/pgsql-9.6/bin/initdb -D /var/lib/pgsql/9.6/data --locale=ru_RU.UTF-8 izejas pakalpojuma postgresql-9.6 initdb
Palaidiet PostgreSQL pakalpojumu un pievienojiet to startēšanai:
Systemctl iespējot postgresql-9.6 systemctl start postgresql-9.6 systemctl statuss postgresql-9.6
Mēs uzstādījām postgres lietotāja paroli, lai varētu attālināti izveidot savienojumu ar serveri:
Su - postgres psql ALTER USER postgres AR KRIPTĒTU PAROLI "jūsu parole"; \q iziet
Mcedit /var/lib/pgsql/9.6/data/pg_hba.conf
Atvērtajā failā atņemiet komentārus un mainiet rindas:
mitināt visu visu 127.0.0.1/32 ident ieslēgts mitināt visu 127.0.0.1/32 md5
mitināt visu visu 0.0.0.0/0 ident ieslēgts mitināt visu visu 0.0.0.0/0 md5
PostgreSQL iestatījumu optimizēšana (postgresql.conf) 1C:Enterprise
Šeit būs iestatījumi PostgreSQL, kas darbojas ESXi 6.5 virtuālajā mašīnā.
VM piešķirtie resursi:
procesors - 8 vCPU;
atmiņa - 48 GB;
disks operētājsistēmai - 50 GB uz LUN aparatūras RAID1 no SAS HDD;
disks datu bāzei - 170 GB programmatūras RAID1 no SSD
disks žurnāliem - 100 GB programmatūras RAID1 no SSD
Lai rediģētu iestatījumus, palaidiet komandu:
Mcedit /var/lib/pgsql/9.6/data/postgresql.conf
Komentētie parametri, kurus mainīsim, ir jāaktivizē.
Procesors
autovacuum_max_workers = 4
autovacuum_max_workers = NCore/4..2, bet ne mazāk kā 4
Autovakuuma procesu skaits. Vispārējais noteikums ir tāds, ka jo vairāk rakstīšanas pieprasījumu, jo vairāk procesu. Tikai lasāmā datu bāzē pietiek ar vienu procesu.
ssl=off
Izslēdziet šifrēšanu. Drošajos datu centros šifrēšana ir bezjēdzīga, taču tā palielina CPU slodzi
Atmiņa
Shared_buffers = 12 GB
Shared_buffers = RAM/4
Atmiņas apjoms, ko PgSQL atvēl koplietotajai lapas kešatmiņai. Šī atmiņa tiek koplietota starp visiem PgSQL procesiem. operētājsistēma Tas pats saglabā datus kešatmiņā, tāpēc kešatmiņai nav jāpiešķir visa pieejamā RAM.
temp_buffers = 256 MB
Maksimālais lappušu skaits pagaidu tabulām. Tie. šī ir augšējā robeža pagaidu tabulu izmēram katrā sesijā.
work_mem = 64 MB
work_mem = RAM/32..64 vai 32MB...128MB
Atmiņas ierobežojums viena pieprasījuma apstrādei. Šī atmiņa ir individuāla katrai sesijai. Teorētiski maksimālā nepieciešamā atmiņa ir vienāda ar max_connections * work_mem, praksē tas nenotiek, jo lielākā daļa sesiju gandrīz vienmēr gaida. Šo konsultatīvo vērtību izmanto optimizētājs: tas mēģina paredzēt vaicājumam nepieciešamās atmiņas lielumu, un, ja šī vērtība ir lielāka par work_mem, tas liek izpildītājam nekavējoties izveidot pagaidu tabulu. work_mem nav ierobežojums pilnā nozīmē: optimizētājs var palaist garām, un pieprasījums aizņems vairāk atmiņas, iespējams, daudzkārt vairāk. Šo vērtību var samazināt, pārraugot izveidoto pagaidu failu skaitu:
apkopes_darba_atmiņa = 2 GB
apkopes_darba_atmiņa = RAM/16..32 vai work_mem * 4 vai 256 MB..4 GB
Atmiņas ierobežojums uzturēšanas uzdevumiem, piemēram, statistikas apkopošanai (ANALĪZE), atkritumu savākšanai (VACUUM), indeksu izveidei (CREATE INDEX) un ārējo atslēgu pievienošanai. Šīm operācijām atvēlētās atmiņas apjomam jābūt salīdzināmam ar fiziskais izmērs lielākais indekss diskā.
efektīvas_kešatmiņas_izmērs = 36 GB
Effective_cache_size = RAM — share_buffers
Failu sistēmas kešatmiņas lieluma noteikšana. Parametra palielināšana palielina sistēmas tieksmi atlasīt IndexScan plānus. Un tas ir labi.
Diski
efektīvā_io_vienlaicība = 5
Vienlaicīgu pieprasījumu aprēķins diska sistēmai, ko tā var apkalpot vienā reizē. Vienam diskam = 1, RAID - 2 vai vairāk.
random_page_cost = 1,3
random_page_cost = 1,5–2,0 RAID, 1,1–1,3 SSD
Maksa par nejaušas lapas lasīšanu (noklusējums — 4). Jo mazāks ir diska sistēmas meklēšanas laiks, jo mazākam (bet > 1.0) šim parametram jābūt. Pārāk liela parametra vērtība palielina PgSQL tendenci atlasīt plānus, kas skenē visu tabulu (PgSQL uzskata, ka ir lētāk lasīt visu tabulu secīgi, nevis nejauši lasīt indeksu). Un tas ir slikti.
autovacuum=ieslēgts
Autovakuuma ieslēgšana.
autovacuum_naptime = 20 s
Autovakuuma procesa miega laiks. Ja vērtība ir pārāk liela, tabulām nebūs laika vakuumā, un rezultātā palielināsies uzpūšanās un tabulu un indeksu lielums. Neliela vērtība radīs nevajadzīgu apkuri.
bgwriter_delay = 20 ms
Miega laiks starp fona rakstīšanas procesa diska rakstīšanas cikliem. Šis process ir atbildīgs par to lapu sinhronizēšanu ar disku, kas atrodas share_buffers. Pārāk liela šī parametra vērtība palielinās slodzi uz kontrolpunkta procesu un procesiem, kas apkalpo sesijas (aizmugursistēma). Neliela vērtība novedīs pie tā, ka viens no serdeņiem tiks pilnībā noslogots.
bgwriter_lru_multiplier = 4,0
bgwriter_lru_maxpages = 400
Opcijas, kas kontrolē fona ierakstīšanas procesa ierakstīšanas intensitāti. Vienā ciklā bgwriter raksta ne vairāk par to, kas tika uzrakstīts pēdējā ciklā, reizināts ar bgwriter_lru_multiplier, bet ne vairāk kā bgwriter_lru_maxpages.
synchronous_commit = izslēgts
Atspējot diska sinhronizāciju izpildes laikā. Rada risku zaudēt pēdējos darījumus (0,5-1 sekundes laikā), bet garantē datu bāzes integritāti, izpildes ķēdē nav spraugu. Bet tas ievērojami palielina produktivitāti.
wal_keep_segments = 256
wal_keep_segments = 32...256
Maksimālais WAL segmentu skaits starp kontrolpunktiem. Pārāk biežas kontrolpunkti rada ievērojamu rakstīšanas slodzi diska apakšsistēmā. Katrs segments ir 16 MB liels
wal_buffers = 16 MB
Koplietojamās atmiņas apjoms, kas tiks izmantots, lai buferētu WAL datus, kas vēl nav ierakstīti diskā. Noklusējuma vērtība -1 norāda izmēru, kas vienāds ar 1/32 (apmēram 3%) no , bet ne mazāk kā 64 KB un ne vairāk kā viena WAL segmenta lielums (parasti 16 MB). Šo vērtību var iestatīt manuāli, ja automātiski atlasītā vērtība ir pārāk maza vai liela, taču jebkurš pozitīvs skaitlis, kas mazāks par 32 KB, tiks uzskatīts par 32 KB. Šo parametru var iestatīt tikai servera startēšanas laikā.
WAL buferu saturs tiek ierakstīts diskā, kad tiek veikts katrs darījums, tāpēc ļoti lielas vērtības, visticamāk, nesniegs lielu labumu. Tomēr vismaz dažu megabaitu vērtība var uzlabot rakstīšanas veiktspēju aizņemtā serverī, kad daudzi klienti vienlaikus veic darījumus. Automātiskā noregulēšana, kas darbojas pēc noklusējuma vērtības (-1), vairumā gadījumu izvēlas saprātīgas vērtības.
noklusējuma_statistikas_mērķis = 1000
Iestata noklusējuma statistikas mērķa ierobežojumu, kas attiecas uz kolonnām, kurām ALTER TABLE SET STATISTICS nav norādījis atsevišķus ierobežojumus. Jo augstāka ir iestatītā vērtība, jo ilgāks laiks nepieciešams, lai palaistu ANALĪZI, taču jo augstāka var būt plānotāja aprēķinu kvalitāte. Šī parametra noklusējuma vērtība ir 100.
checkpoint_completion_target = 0,9
Kontrolpunkta “izsmērēšanas” pakāpe. Ierakstīšanas ātrums kontrolpunkta laikā tiek noregulēts tā, lai kontrolpunkta laiks būtu vienāds ar laiku, kas pagājis kopš pagātnes, reizināts ar kontrolpunkta_pabeigšanas_ mērķi.
min_wal_size = 4G
max_wal_size = 8G
min_wal_size = 512MB .. 4G
max_wal_size = 2 * min_wal_sizeMinimālais un maksimālais WAL failu lielums. Līdzīgi kā checkpoint_segments
fsync=on
Opcijas atspējošana palielina veiktspēju, taču pastāv ievērojams risks zaudēt visus datus, ja pēkšņi tiek izslēgta barošana. Uzmanību: ja RAID ir kešatmiņa un tas ir atpakaļrakstīšanas režīmā, pārbaudiet RAID kontrollera kešatmiņas akumulatora klātbūtni un funkcionalitāti! Pretējā gadījumā, izslēdzot barošanu, RAID kešatmiņā ierakstītie dati var tikt zaudēti, kā rezultātā PgSQL negarantē datu integritāti.
row_security = izslēgts
Ieraksta līmeņa izšķirtspējas kontroles atspējošana
enable_nestloop = izslēgts
Iespējo vai atspējo plānotāja ligzdotu cilpas pievienošanās plānu izmantošanu. Nav iespējams pilnībā novērst ligzdotās cilpas, taču, ja izslēgsit šo opciju, plānotājs to neizmantos šī metode, ja var piemērot citus. Pēc noklusējuma šis iestatījums ir ieslēgts.
Slēdzenes
max_locks_per_transaction = 256
Maksimālais indeksa/tabulas bloķēšanas skaits vienā darījumā
1C platformas iestatījumi
standard_conforming_strings = izslēgts
Atļaut \ rakstzīmi izmantot aizbēgšanai
escape_string_warning = izslēgts
Nebrīdiniet par rakstzīmes \ izmantošanu aizbēgšanai
Drošības iestatījumi
Pārliecināsimies, ka PostgreSQL serveris ir redzams tikai 1C: Enterprise serverim, kas instalēts tajā pašā mašīnā.
listen_addresses = 'localhost'
Ja 1C: Enterprise serveris ir instalēts citā mašīnā vai ir nepieciešams izveidot savienojumu ar DBMS serveri, izmantojot PGAdmin pievienojumprogrammu, tad tā vietā vietējais saimnieks jums jānorāda šīs iekārtas adrese.
Datu bāzes krātuve
PostgreSQL, tāpat kā gandrīz jebkura DBVS, ir kritiska diska apakšsistēmai, tāpēc, lai palielinātu DBVS veiktspēju, PostgreSQL sistēmu, žurnālus un pašas datu bāzes izvietosim dažādos diskos.
Servera apturēšana
Systemctl stop postgresql-9.6
Mēs pārsūtām žurnālus uz 120 GB SSD:
Mv /var/lib/pgsql/9.6/data/pg_xlog /raid120 mv /var/lib/pgsql/9.6/data/pg_clog /raid120 mv /var/lib/pgsql/9.6/data/pg_log /raid120
Ln -s /raid120/pg_xlog /var/lib/pgsql/9.6/data/pg_xlog ln -s /raid120/pg_clog /var/lib/pgsql/9.6/data/pg_clog ln -s /raid120/pg/_log /var/lib pgsql/9.6/data/pg_log
Mēs arī pārsūtīsim direktoriju ar datu bāzēm:
Mv /var/lib/pgsql/9.6/data/base/raid200
Ln -s /raid200/base /var/lib/pgsql/9.6/data/base
Sāksim serveri un pārbaudīsim tā statusu
Systemctl start postgresql-9.6 systemctl statuss postgresql-9.6
Izmantot gadījumu kā PostgreSQL datu bāzes serveri Windows platforma nav īpaši populārs, bet tas parasti notiek, ja jums ir nepieciešams kaut kā ietaupīt naudu par produktiem no MS. Ir arī specializētas lietojumprogrammas, kas vislabāk darbojas ar PostgreSQL. 1c ir modificēts PostgreSQL būvējums, kas, kā apliecina izstrādātāji, nodrošina veiktspējas un kļūdu tolerances līmeni, kas ir salīdzināms ar MSSQL. Vai tiešām tā, pārbaudīsim praksē :)
1. Instalējiet PostgreSQL
Lejupielādējiet jaunāko PostgreSQL 64-bit 9.1.2-1.1C būvējumu no 1c vietnes, izpakojiet arhīvu, palaidiet msi pakotni, tai, kurai nav int, nav liela faila izmēra.
Noklikšķiniet uz Sākt.
Atstājiet instalēšanas opcijas kā noklusējuma iestatījumus.
Iestatiet lietotāja paroli postgres no kura sāksies pakalpojums .
Noklikšķiniet uz Tālāk. Ja PostgreSQL instalējat pirmo reizi, vednis liks jums izveidot lietotāju postgres.
Datu bāzes inicializācijas posmā atlasiet UTF8 kodējumu. Iestatiet iekšējā postgres lietotāja pieteikumvārdu un paroli. Uzmanību! PostgreSQL pakalpojuma lietotāju paroles un iekšējā PostgreSQL datu bāzes lietotāja parole nedrīkst būt vienādas. Parolei jābūt vismaz četrām rakstzīmēm garai. Ja plānojat palaist 1C serveri un PostgreSQL dažādās iekārtās, jums ir jāatzīmē izvēles rūtiņa “Atbalstīt savienojumus no jebkura IP, nevis tikai vietējā resursdatora”. Noklikšķiniet uz Tālāk un vēlreiz vēlreiz. :)
Vēl divas reizes noklikšķiniet uz Tālāk un gaidiet, līdz instalēšana tiks pabeigta.
Pēc tam dodieties uz Sākt\Visas programmas\PostgreSQL 9.1.2-1.1C(x64). Palaidiet pgAdmin III administrēšanas utilītu. Mēģināsim izveidot savienojumu ar datu bāzi. Ievadiet paroli, ko norādījāt instalēšanas laikā.
Un mēs saņemam šādu kļūdu: Kļūda, veidojot savienojumu ar serveri: FATAL: paroles autentifikācija neizdevās lietotājam “postgres”.
Diezgan negaidīti, ņemot vērā, ka parole tika ievadīta pareizi. Nolēmu pasmelties ar pg_hba.conf, bet no pirmā acu uzmetiena tur viss ir kārtībā.
# TIPA DATU BĀZES LIETOTĀJA ADRESES METODE # IPv4 lokālie savienojumi: mitināt visus postgres::1/128 md5 mitināt visus postgres 127.0.0.1/32 md5 mitināt visus postgres 192.168.1.0/24 md5
Es nolēmu mainīt autorizācijas metodi no md5 uz uzticību. Es restartēju pakalpojumu un mēģinu vēlreiz izveidot savienojumu ar datu bāzi. Šoreiz es saņemu šo ziņu. Patiešām, pgAdmin vietnē ir pieejams vairāk nekā viens jauna versija. Pēc kura savienojums ar datu bāzi ir veiksmīgs!!?!! Atceros, ka iepriekš md5 šādas problēmas nesagādāja, acīmredzot šis gļuks tiešām ir saistīts ar vecā versija pgAdmin.
Tagad mēs varam izveidot datubāzi 1C vajadzībām vai darīt to, izmantojot pašu 1C :)
2. Uzstādīšana 1C uzņēmums 8.2.
Instalēšanai mēs ņemam vērā šādus komponentus: 1C: Enterprise, 1C: Enterprise Server, Web servera paplašinājumu moduļi, 1C: Enterprise servera administrēšana. Instalēšanas posmā “Instalēt 1C uzņēmumu kā pakalpojumu” mēs iestatījām lietotāja USR1C82 paroli.
Spied tālāk un seko instalācijas gaitai :) Lietotājam USR1CV82 Instalēšanas laikā ir jāpiešķir šādas tiesības:
Pieteikšanās kā pakalpojums (Pieteikties kā pakalpojumu), Pieteikties kā pakešu darbs (Piesakieties kā pakešu darbs). Jūs varat to apskatīt vietnē Lokālā datora politika\Datora konfigurācija\Windows iestatījumi\Drošības iestatījumi\Vietējās politikas\Lietotāja tiesību piešķīrumi.
Dosimies uz aprīkojumu 1C Enterprise serveru administrēšana, Mēs redzam, ka klasteris ir pieaudzis un karājas 1541. portā. Mūsu serveris atrodas arī cilnē “Darba serveri”. Tagad jūs varat pievienot datu bāzi 1C serverim. Lai to izdarītu, dodieties uz cilni " Informācijas bāzes"Ar peles labo pogu noklikšķiniet un atlasiet Jaunums - Informācijas bāze. Iestatiet nepieciešamos parametrus, lai izveidotu savienojumu ar PostgreSQL serveri. Noklikšķiniet uz Labi.
Palaidīsim 1C: Enterprise. Mēs izvēlamies serverī pievienot esošu informācijas bāzi.
Pēc tam iestatiet savienojuma parametrus. Noklikšķiniet uz "Tālāk" un visbeidzot uz "Pabeigt".
Darbību, lai izveidotu datubāzi, var veikt tieši no 1C: Enterprise. Lai to izdarītu, startēšanas laikā atlasiet “Izveidot jaunu informācijas bāze».
Lai savienotu 1C klientus ar serveri no ārpuses un darbinātu datu bāzes serveri ugunsmūrī, ir jābūt atvērtiem šādiem portiem:
Servera aģents ( nikns) - tcp:1540 Galvenais klastera vadītājs ( rmngr) - tcp:1541 Tīkla portu klāsts dinamiskai darbinieku procesu izplatīšanai - tcp:1560-1591, tcp:5432 - Postgresql. Izveidosim noteikumu, izmantojot standarta saskarni vai izmantojot komandu:
netsh advfirewall ugunsmūris pievienot kārtulas nosaukums="1Cv8-Server" dir=in action=allow protocol=TCP localport=1540,1541,5432,1560-1590 enable=yes profile=JEBKURS remoteip=Jebkurš interfeisa tips=LAN
Tagad mēs varam viegli palaist 1C:Enterprise klientu no cita datora un pievienot esošo informācijas bāzi newdb. Neaizmirstiet par licencēm un programmatūras/aparatūras aizsardzību. Tagad mēs varam lejupielādēt Gilev testu un izmērīt mūsu sistēmas veiktspēju.
VirtualBox ierīcē ar 1 GB atmiņu, divkodolu 2,6 GHz, 319 izlaidumu 1c Gilev tests dod 11,42 punktus, kas ir aptuveni tikpat, cik CentOS. Uz 16.362 ir nedaudz vairāk par 11.60 punktiem. Iestatījumu optimizēšana, izmantojot EnterpriseDB Tuning Wizard, nedeva ievērojamu pieaugumu (11,66 un 11,62), lai gan kopumā tas var būt izdevīgi. :)
3. Regulārs darbs PostgreSQL serverī.
Dublējums.
Palaidiet pgAdmin III administrēšanas utilītu un ar peles labo pogu noklikšķiniet uz vajadzīgās datu bāzes. Izvēlieties "Dublēt". Izvēlieties formātu (Pielāgots (saspiešanas līmenis no 0 līdz 9), Darva, Vienkāršs, Katalogs). Runājot par saspiešanas līmeni, vislabāk tiek saspiests jebkura saspiešanas līmeņa “pielāgots formāts”, pēc tam “direktorijs”, tad “vienkāršais” un visbeidzot “darva”. Mēs norādām UTF8 kodējumu, lomas nosaukums ir postgresql. Visas papildu opcijas atstājam kā noklusējuma iestatījumus. Noklikšķiniet uz pogas "Dublēt". Laukā “Ziņojumi” tiek parādīts visu veikto darbību saraksts ar pabeigšanas kodu. Ja 0, tad veiksme. Šeit jūs varat arī redzēt, kā no komandrindas palaist līdzīgu darbību.
F)\pgAdmin III\1.16\pg_dump.exe" --host 192.168.1.200 --ports 5432 --lietotājvārds "postgres" --role "postgres" --bez paroles --format custom --blobs --compress 9 --encoding UTF8 --verbose --fails "G:\Backups\gilev_dump.backup" "newdb"
Attiecīgi automātiskais skripts Rezerves kopija, ko pievienojam plānotājam, varētu izskatīties šādi:
"C:\Program Files (x86)\pgAdmin III\1.16\pg_dump.exe" --host 192.168.1.200 --port 5432 --lietotājvārds "postgres" --role "postgres" --bez paroles --format custom --blobs --compress 9 --encoding UTF8 --verbose --fails "G:\Backups\gilev_dump_%date:~0.2%_%date:~3.2%_%date:~6.4% .backup" "newdb"
Atveseļošanās.
Lai atjaunotu, atlasiet datu bāzi, no kuras mēs vēlamies atjaunot datus rezerves kopija, vēlams tukšs. Ar peles labo pogu noklikšķiniet un atlasiet “Atkopšana”. Iestatiet dublējuma failu, lomas nosaukumu: postgres, noklikšķiniet uz “Atjaunot” Izmantojot komandrindu:
"C:\Program Files (x86)\pgAdmin III\1.16\pg_restore.exe" --host 192.168.1.200 --port 5432 --lietotājvārds "postgres" --dbname "testdb" --role "postgres" --nē -parole -- detalizēts "G:\Backups\gilev_dump_26_09_2012.backup"
kur testdb ir tukša datu bāze, kurā tiek atjaunots dublējuma arhīvs.
Apkopes darbības:
VAKUUMA komanda:
Secīgi attīra visas pašlaik pievienotās datu bāzes tabulas, dzēš pagaidu datus un atbrīvo vietu diskā. Visbiežāk komanda VACUUM tiek izpildīta precīzi, lai iegūtu maksimālu brīvas vietas diskā un palielinātu datu piekļuves ātrumu.
VAKUUMS— atzīmē vietu, ko aizņem ierakstu vecās versijas, kā brīvu. Šī komandas varianta izmantošana, kā likums, nesamazina tabulu saturošā faila lielumu, bet ļauj novērst tā nekontrolējamu augšanu, labojot to pieņemamā līmenī. Palaižot VACUUM, ir iespējama paralēla piekļuve apstrādātajai tabulai. Ir vairāki papildu opcijas izmantojot VAKUUMU: VACUUM FULL, VACUUM FREEZE, VACUUM ANALIZĒT.
VAKUUMS PILNS mēģina noņemt visas vecās ierakstu versijas un attiecīgi samazināt faila lielumu, kurā ir tabula. Šī komandas opcija pilnībā bloķē apstrādājamo tabulu.
VAKUUMSALSĒŠANA - Ja VACUUM FULL no tabulām noņem “atkritumus” un pārvieto ierakstus tā, lai tabulas kompakti novietotos diskā un sastāvētu no mazākā fragmentu skaita, savukārt saspiešana aizņem ilgu laiku un bloķē ierakstus, tad VACUUM FREEZE vienkārši noņem “atkritumus” no tabulas, bet paši ieraksti nepārvietojas, tāpēc tas ir ātrāk un nebloķē rakstīšanu. Šobrīd šo iespēju aizstāj autovakuums – automātiska atkritumu savākšana iekšā postgresql.conf kā arī vairākas papildu iespējas, kas paplašina funkcionalitāti:
autovacuum=ieslēgts# Iespējo automātisku atkritumu savākšanu.
log_autovacuum_min_duration = -1# Iestatot to uz nulli, tiek reģistrētas visas autovakuuma darbības. Mīnus viens (pēc noklusējuma) aizliedz izvadi žurnālā. Piemēram, ja iestatāt vērtību
vienāds ar 250 ms, tad visas automātiskās vakuuma un analīzes darbības, kas tiek veiktas 250 ms vai ilgāk, tiks reģistrētas. Šī iestatījuma iespējošana var būt noderīga autovakuuma izsekošanai.
Šo opciju var iestatīt tikai failā postgresql.conf vai failā komandrinda serveris.
autovacuum_naptime = 10 min# Laiks sekundēs, pēc kura datu bāzē tiek pārbaudīta atkritumu savākšanas nepieciešamība. Pēc noklusējuma tas notiek reizi minūtē.
autovacuum_vacuum_threshold= 1800 # Slieksnis dzēsto un modificēto ierakstu skaitam jebkurā tabulā, kuru pārsniedzot notiek atkritumu savākšana (VAKUUMS).
autovacuum_analyze_threshold= 900 # Slieksnis ievietoto, dzēsto un modificēto ierakstu skaitam jebkurā tabulā, kuru pārsniedzot tiek uzsākts analīzes process (ANALĪZE).
autovacuum_vacuum_scale_factor= 0,2 # Mainīto un dzēsto ierakstu procentuālā daļa attiecībā pret tabulu, virs kuras tiek aktivizēta atkritumu savākšana.
autovacuum_analyze_scale_factor= 0,1 # Tāds pats kā iepriekšējais mainīgais, bet attiecībā pret analīzi.
VAKUUMA ANALĪZE— Ja datu bāzē ir tabulas, kurās dati netiek mainīti vai dzēsti, bet tikai pievienoti, tad šādām tabulām var izmantot atsevišķu ANALYZE komandu. Šo komandu ir vērts izmantot arī atsevišķai tabulai pēc tam, kad tai ir pievienots liels skaits ierakstu.
ANALĪZĒT komanda:
Kalpo, lai atjauninātu informāciju par datu sadalījumu tabulā. Šo informāciju optimizētājs izmanto, lai atlasītu ātrāko vaicājumu izpildes plānu. Parasti komanda tiek izmantota kopā ar VAKUUMA ANALĪZE.
REINDEX komanda (pārindeksēšana):
Izmanto, lai atjaunotu esošos indeksus. Ir jēga to izmantot gadījumā
— indeksa bojājums;
- pastāvīgs tā lieluma pieaugums.
Otrais gadījums prasa zināmu skaidrojumu. Indekss, tāpat kā tabula, satur blokus ar vecām ierakstu versijām. PostgreSQL ne vienmēr var atkārtoti izmantot šos blokus, un tāpēc indeksa fails pakāpeniski palielinās. Ja dati tabulā bieži mainās, tie var pieaugt diezgan ātri. Ja pamanāt šādu indeksa darbību, jums tas jākonfigurē, lai periodiski palaistu komandu REINDEX. Lūdzu, ņemiet vērā: komanda REINDEX, tāpat kā VACUUM FULL, pilnībā bloķē tabulu, tāpēc tā ir jāizpilda, kad servera slodze ir minimāla.
Jautājums par to, kura DBVS - Postgresql vai MS SQL priekš 1C ir visoptimālākā - ir bijis daudzu rakstu temats. Šajā rakstā mēs apskatīsim abu optimizācijas darbības. Katra pārdevēja DBVS ir gan savi konfigurācijas ieteikumi, gan 1C ieteikumi. Jāņem vērā, ka atkarībā no aprīkojuma, servera konfigurācijas un lietotāju skaita, kas iestata dažādas slodzes, DBVS optimizācijas 1C un ieteikumu ieviešanas procesa detaļas var mainīties.
PostgreSQL iestatīšana operētājsistēmai 1C
Pieredze 1C datu bāzu darbībā PostgreSQL rāda, ka 1C un PostgreSQL visaugstākā veiktspēja un optimālā veiktspēja tika sasniegta operētājsistēmā Linux, tāpēc ieteicams to izmantot. Bet neatkarīgi no operētājsistēmas ir svarīgi atcerēties, ka PostgreSQL instalēšanas laikā norādītie noklusējuma iestatījumi ir paredzēti tikai DBVS servera palaišanai. Par jebkādu rūpniecisku ekspluatāciju nevar būt ne runas! Nākamais solis pēc palaišanas būs PostgreSQL optimizēšana 1C:
- Pirmkārt, mēs atspējojam enerģijas taupīšanu (pretējā gadījumā datu bāzes atbilžu aizkavēšanās var neparedzami palielināties) un aizliedzam koplietotās atmiņas apmaiņu.
- Mēs konfigurējam DBVS servera pamatparametrus (konfigurācijas ieteikumi ir pietiekami detalizēti aprakstīti gan pārdevēja oficiālajā vietnē, gan 1C, tāpēc mēs koncentrēsimies tikai uz svarīgākajiem).
- Uzņēmuma 1C standarta ieteikumi iesaka atspējot HyperThreading mehānismus. Taču Postgres-pro testēšana serveros ar iespējotu SMT (vienlaicīga vairāku pavedienu veidošana) uzrādīja dažādus rezultātus.
PostgreSQL instalēšana
1C instalēšana vietnē PostgreSQL operētājsistēmā Windows ir diezgan vienkāršs process. Palaižot instalācijas pakotni, jānorāda UTF-8 kodējums. Faktiski šī ir vienīgā interesantā nianse, un nav nepieciešama papildu PostgreSQL 1C 8.3 konfigurācija no Windows. PostgreSQL instalēšana un konfigurēšana operētājsistēmai 1C operētājsistēmā Linux OS var radīt vairākas grūtības. Lai tos pārvarētu, piemēram, apsveriet iespēju palaist (izmantojot izplatīšanas komplektus no vadošā Krievijas pārdevēja PostgreSQL-Pro un uzņēmuma 1C) PostgreSQL Ubuntu 16.04 x64 serverī.
1C izplatīšanas komplektu uzstādīšana PostgreSQL DBVS
1. Lejupielādējiet norādīto PostgreSQL DBMS izplatīšanas komplekta pozīciju:
2. Augšupielādēt PostgreSQL serverī;
3. Varat izpakot PostgreSQL DBVS instalēšanas programmu, izmantojot komandu:
tar -xvf postgresql-9.4.2-1.1C_amd64_deb.tar.bz24. Pirms PostgreSQL DBMS izplatīšanas komplekta instalēšanas pārbaudīsim, vai sistēmā ir vajadzīgā lokalizācija (pēc noklusējuma ru_RU.UTF-8):
5. Ja sistēma, ar kuru darbosies PostgreSQL, ir instalēta valodā, kas nav krievu valoda, jums ir jāizveido jaunas lokalizācijas:
locale-gen ru_RU update-locale LANG=ru_RU.UTF8 dpkg-reconfigure locales6. Ja vajadzīgā lokalizācija joprojām ir pieejama, instalējiet to pēc noklusējuma:
locale –a nano /etc/default/locale Aizstāt saturu ar LANG=ru_RU.UTF-87. Pēc atsāknēšanas instalējiet mūsu PostgreSQL versijai nepieciešamās pakotnes:
apt-get install libxslt1.1 ssl-cert8. PostgreSQL pakotnes versija 9.4.2-1.1C ir saistīta ar libicu pakotnes versiju libicu48. Nepieciešamās versijas repozitorijā vairs nav, bet jūs varat to lejupielādēt;
9.Lejupielādēt un ievietot direktorijā, kurā tiek glabāti lejupielādētie PostgreSQL faili;
10. Dodoties uz direktoriju ar PostgreSQL failiem, mēs veicam instalēšanu, secīgi ierakstot šādas komandas:
CD<Путь к папке с файлами>dpkg -i libicu48_4.8.1.1-3ubuntu0.6_amd64.deb dpkg -i libpq5_9.4.2-1.1C_amd64.deb dpkg -i postgresql-client-common_154.1.1Client-common_154.1.1C_all.de.com b dpkg -i postgresql-client-9.4_9.4.2-1.1C_amd64.deb dpkg -i postgresql-9.4_9.4.2-1.1C_amd64.deb dpkg -i postgresql-contrib-9.4_9.4.2-64.Cdeb_2-1.1.11. Gatavs. PostgreSQL DBMS izplatīšanas komplekts ir instalēts.
PostgreSQL-Pro izplatījumu instalēšana
Lai instalētu serveri, jums ir jāizpilda šādas komandas pēc kārtas:
sudo sh -c "echo "deb http:// 1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list" wget --quiet -O - http:// 1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C-92 | sudo apt-key add - && sudo apt-get update sudo apt-get install postgresql-pro-1c-9.4Lai piekļūtu serverim, rediģējiet failā esošos parametrus pg_hba.conf
cd<Путь до каталога pg_hba.conf>cp pg_hba.conf pg_hba.conf.old bash -c "echo "local all postgres trust" > pg_hba.conf" bash -c "echo "host all all all md5" >> pg_hba.conf"Pašam failam ir šāda struktūra:
Fails ir labi dokumentēts, bet angļu valoda. Īsi apskatīsim galvenos parametrus:
- Vietējais vietējais savienojums tikai caur unix
- Uzņēmēja TCP/IP savienojums
- Hostsslšifrēts SSL savienojums caur TCP/IP (serveris jāveido ar SSL atbalstu, jāiestata arī ssl parametrs)
- Hostnossl nešifrēts savienojums, izmantojot TCP/IP
- uzticēties atzīt bez autentifikācijas
- noraidīt atteikties bez autentifikācijas
- parole skaidras teksta paroles pieprasījums
- md5 paroles pieprasījums MD5 formā
- ldap lietotājvārda un paroles pārbaude, izmantojot LDAP serveri
- rādiuss Lietotājvārda un paroles pārbaude, izmantojot RADIUS serveri
- pam lietotājvārda un paroles pārbaude, izmantojot spraudņa pakalpojumu
Detalizētāku un detalizētāku informāciju var atrast PostgreSQL produkta dokumentācijā.
root@NODE2:/home/asd# service --status-all |grep postgres [ - ] postgresql root@NODE2:/home/asd# service postgresql start root@NODE2:/home/asd# service --status-all | grep postgres [ + ] postgresqlPēc pamata instalēšanas pabeigšanas jums ir jākonfigurē konfigurācijas fails serveris postgresql.conf, atbilstoši PostgreSQL, 1C servera un Ubuntu servera konfigurācijas specifikai.
1C optimizācija MS SQL Server
Uzstādīt Jaunākie atjauninājumi SQL serverim.
Operētājsistēma rezervē vietu un aizpilda to ar nullēm, kas prasa diezgan ilgu laiku šādos gadījumos:
- Datu bāzes izveide;
- Datu failu, darījumu žurnāla pievienošana esošai datu bāzei;
- Esoša faila lieluma palielināšana (ieskaitot Autogrow darbības);
- Mēs atjaunojam datu bāzes vai failu grupas.
Tiek lemts šī problēma lomas (kurā darbojas serveris) pievienošana vienumam vietējā politika apsardze "Veikt apjoma uzturēšanas uzdevumus."
Ja iespējams, ir nepieciešams izplatīt TempDB datubāzi (īpaši intensīvi tā tiek izmantota RCSI pārvaldītajā bloķēšanas režīmā) un darījumu žurnālu dažādos diskos.
Serverī, kur tas darbojas SQL serveris, enerģijas taupīšanas režīmam jābūt iestatītam uz "High Performance".
Mape ar datu bāzes failiem nedrīkst būt saspiesta.
Servera cilnē “Atmiņa” mēs iestatījām minimālo līmeni uz 50% no kopējās atmiņas. Mēs aprēķinām maksimālo, izmantojot vienu no formulām:
- Maksimālā atmiņa = kopējais apjoms - izmērs atbilstoši OS - izmērs 1C (ja tāds ir, iepriekš mērot ar skaitītājiem izmantoto atmiņu) vai
- Maksimālā atmiņa = kopējais lielums – (1024* Kopējais lielums/16384).
Mēs ierobežojam DOP parametru “Maksimālā paralēlisma pakāpe” un iestatām to uz “1”.
Atjauninām statistiku saskaņā ar grafiku. Sākot ar SQL serveris 2008, statistikas atjaunināšana izraisa vaicājumu pārkompilēšanu un attiecīgi iztīra procesuālo kešatmiņu, tāpēc nav nepieciešams veikt atsevišķu procedūru, lai notīrītu procesuālo kešatmiņu.
Mēs periodiski pārindeksējam tabulu un defragmentējam indeksus.
Mēs izveidojam pareizu rezervēšanas politiku. Ja jums nav nepieciešams atkopties līdz pēdējam laika punktam pirms sistēmas avārijas un pēdējās 5 minūtes vai vairāk nav svarīgas jūsu uzņēmumam, iestatiet atkopšanas modeli uz “Vienkāršs”. Tas ievērojami paātrinās ierakstīšanas ātrumu. Galvenais ir tas, ka diferencēto dublēšanu var pabeigt noteiktajā laikā.
Mēs panākam uzlabojumus darbā ar TempDB I/O laikā, izveidojot papildu datu failus. Ja ir mazāk nekā 8 loģiskie procesori, ieteicams katram loģiskajam procesoram izveidot datu failu. Ja ir vairāk nekā 8 loģiskie procesori, ieteicams izveidot 8 datu failus un, palielinot par vienu reizinā ar 4, noteikti novērtējiet TempDB slodzi.
1 Nov 2012 Brīvi izplatītas izmantošanas priekšrocības programmatūra acīmredzams. Diemžēl arī trūkumi ir acīmredzami - nav oficiāla atbalsta, dokumentācija bieži ir pretrunīga, nepilnīga un izkaisīta. dažādi avoti. Šis raksts palīdzēs izprast PosgreSQL instalēšanas procesu 1C:Enterprise 8, izvairoties no kļūmēm, kas nav aprakstītas oficiālajā dokumentācijā.
Nepieciešamās sastāvdaļas uzstādīšanai
PostgreSQL DBVS tiek izplatīta bez maksas un ir iekļauta 1C lietojumprogrammu servera piegādes komplektā. 1C:Enterprise 8 lietojumprogrammu serverim ir divas versijas: 32 bitu un 64 bitu. Postgre var tikt galā ar abiem.
Tātad, mums ir pieejami izplatīšanas komplekti:
- Postgre: postgresql-9_1_2-1_1Cx64.zip, laipni nodrošina 1C.
- 1C:Enterprise lietojumprogrammu servera izplatīšana operētājsistēmai Windows x64, versija 8.2.16.368.
Šķiet, ka tas nevar būt vienkāršāk - vienkārši palaidiet un instalējiet. Viegli! Bet instalēšana standarta režīmā radīs nelielu ierobežojumu: klasteris atradīsies mapē “Programmu faili”. Ne visiem tas patiks. Apsvērsim divas instalēšanas iespējas — vienkāršu un progresīvu.
Raksts ir sadalīts 5 sadaļās:
1) 1C servera uzstādīšana.
2) Instalējiet PostgreSQL standarta formā, kas ir pietiekama, lai palaistu 1C bez papildu iestatījumiem.
3) Instalējiet PostgreSQL un atlasiet klastera krātuves mapi.
4) Jaunas 1C informācijas bāzes izveide.
5) Norāda mapi datu bāzes failu glabāšanai DBVS serverī.
Pirms instalēšanas noteikti izlasiet visu rakstu!
1C lietojumprogrammu servera uzstādīšana
Mēs palaižam setup.exe no mapes ar 1C servera izplatīšanas komplektu.
Ja lietojumprogrammu serveri instalējat nevis kā pakalpojumu, tas katru reizi būs jāsāk manuāli. Šī opcija ir nepieciešama reti. Mēs to instalējam kā pakalpojumu un izlemjam, kuram lietotājam tas tiks palaists. Drošības apsvērumu dēļ labāk ir izveidot atsevišķu lietotāju USR1CV82, nevis ļaut pakalpojumam darboties ar pilnām tiesībām.
Pēc lietojumprogrammu servera instalēšanas sistēma liks instalēt HASP aizsardzības atslēgas draiveri. Mēs piekrītam:
Gaidām ziņu:
Ja ziņojums atšķiras, visticamāk, sistēmā ir palikušas “astes” no iepriekšējām HASP draiveru instalācijām. Izdzēsiet tos visus un mēģiniet vēlreiz.
Gatavs, mēs esam veiksmīgi instalējuši 1C:Enterprise 8 lietojumprogrammu serveri.
PostgreSQL instalēšana standarta formā, kas ir pietiekama, lai palaistu 1C bez papildu iestatījumiem
Palaidiet "postgresql-9.1.2-1.1C(x64).msi"
Jums nav jāmaina instalēšanas opcijas, darbosies 1C. Tālāk.
Postgre, tāpat kā 1C serveris, pats var izveidot lietotāju, ar kuru jūs darbināsit pakalpojumu. Es vēršu jūsu uzmanību uz to, ka, ja norādāt konts ar administratora tiesībām pakalpojums nedarbosies pareizi. Noteikti izveidojiet jaunu lietotāju.
Nākamais instalācijas logs.
Mēs inicializējam klasteru. Ja mūsu datu bāzes serveris un 1C lietojumprogrammu serveris atrodas uz dažādi datori, pēc tam atzīmējiet izvēles rūtiņu “Atbalstīt savienojumus no jebkura IP”, pretējā gadījumā mēs tai nepieskaramies. Noteikti norādiet UTF8 kodējumu. Izveidojiet DBVS superlietotāju. Tālāk…
Sākotnējam darbam mums nekas nav nepieciešams, noņemiet atzīmi no izvēles rūtiņas un pabeidziet instalēšanu.
Mūsu pūļu rezultāts ir lietošanai gatavs PostgreSQL. Ja esam apmierināti, ka datu bāzes atradīsies programmā Program Files\PostgreSQL\9.1.2-1.1C\data, mēs tur beidzam, atveram datu bāzes un izbaudām procesu. Tomēr biežāk datu bāzes “guļ” uz īpaši izstrādātiem disku masīviem, nevis uz sistēmas disks. Lai konfigurētu datu atrašanās vietu, lūdzu, pirms instalēšanas izlasiet šo sadaļu.
Postgre instalēšana, izvēloties klastera krātuves vietu
Mēs turpinām instalēt Postgre un veicam visas darbības, līdz tiek piedāvāts inicializēt klasteru:
Noņemiet atzīmi no izvēles rūtiņas "Inicializēt datu bāzes kopu" un noklikšķiniet uz "Tālāk".
Jā, mēs esam pārliecināti.
Noņemiet atzīmi no izvēles rūtiņas “Palaist Stack Builder pēc iziešanas” un pabeidziet instalēšanu.
1. Ir nepieciešams piešķirt visas tiesības mapei, kurā mēs instalējām PostgreSQL, parasti tas ir C:\Program Files\PostgreSQL
2. Palaidiet cmd kā administratoru. Ja to darāt operētājsistēmā win7, palaidiet to kā administratoru.
3. Izveidojiet mapi, kurā tiks saglabāts klasteris. Piemēram, d:\postgredata.
md d:\postgredata
4. Mēs inicializējam klasteru manuāli, norādot ceļu, kur tas atradīsies.
“C:\Program Files\PostgreSQL\9.1.2-1.1C\bin\initdb.exe” -D d:\postgredata --locale=Russian_Russia --encoding=UTF8 -U postgres
5. Noņemiet PostgreSQL pakalpojumu, kas tika instalēts instalēšanas laikā.
sc izdzēst pgsql-9.1.2-1.1C-x64
Kur pgsql-9.1.2-1.1C-x64 ir pakalpojuma nosaukums. Ja precīzi nezināt nosaukumu, varat apskatīt pakalpojuma “PostgreSQL datu bāzes serveris...” rekvizītus (Sākt - Vadības panelis - Administratīvie rīki - Pakalpojumi)
6. Izveidot jauns pakalpojums norādot mūsu kopu
“C:\Program Files\PostgreSQL\9.1.2-1.1C\bin\pg_ctl” reģistrs -N pgsql -U postgresql -P parole -D d:/postgredata
7. Tagad ejam uz servisiem. Sākt – Vadības panelis – Administrēšana – Pakalpojumi un sāciet mūsu pakalpojumu.
Jaunas 1C datu bāzes izveide serverī ar PostgreSQL
Ir vairākas datu bāzes izveides iespējas. Varat mēģināt izveidot datu bāzi, izmantojot pgAdmin3, 1C servera administrēšanas konsoli. Bet šeit jūs saskarsies ar daudz nesaprotamu jautājumu un kļūdu gūzmu, uz kurām atbildes ilgi meklēsiet. Atstājiet to ekspertiem. Mūsu mērķis ir iegūt darba bāzi ar minimālu piepūli. Aprakstīsim vienkāršāko veidu, kā to panākt.
Mēs palaižam 1C klientu.
Noklikšķiniet uz "Pievienot...".
Mēs izstrādājam datu bāzes nosaukumu, pēc tam norādiet “1C: Enterprise serverī”.
Serveru klasteris 1C:Uzņēmums– localhost, ja mēs veidojam datu bāzi tajā pašā datorā, kurā ir instalēts 1C serveris, vai 1C lietojumprogrammu servera nosaukums, ja tas ir citā.
Informācijas bāzes nosaukums klasterī- turpmāk šis nosaukums tiks norādīts, pieslēdzoties no citiem datoriem.
DBVS tips– Atlasiet PostgreSQL.
Datu bāzes serveris- norādiet PostgreSQL servera nosaukumu. Ja mēs izveidojam datu bāzi serverī, mēs norādām arī localhost.
Datu bāzes nosaukums– ar šo nosaukumu tiks izveidota datu bāze programmā PostgreSQL.
Lietotājs, parole– tā lietotāja vārds, kuru norādījām kā superlietotāju, instalējot PostgreSQL. Noteikti atzīmējiet izvēles rūtiņu “Izveidot datu bāzi, ja tā neeksistē”.
Rodas jautājums – kur fiziski tiks glabāta datubāze? Norādītā klastera mapē Base. Ko darīt, ja mēs nevēlamies, lai tas atrodas tur, kur atrodas visas bāzes? Mēs vēl neko nevaram darīt, mēs vienkārši izveidosim bāzi un turpināsim. Tālāk…
Datu bāzes krātuves mapes norādīšana
Tātad, mēs esam izveidojuši bāzi. Vairumā gadījumu šī ir vieta, kur instalēšana beidzas. Tomēr, ja datu bāzu ir daudz un ir vairāki disku masīvi dažādām datu bāzu grupām, ir jānorāda, kur datu bāzēm fiziski jāatrodas. Lai to izdarītu, palaidiet pgAdmin3 no Sākt - Programmas - PostgreSQL. Izveidojiet savienojumu ar mūsu serveri.
Kad pirmo reizi izveidojat savienojumu, Postgre prasīs paroli postgres lietotājam (to mēs izveidojām instalēšanas laikā).
Mēs izveidojam jaunu TableSpace, šī būs mape, kurā tiks glabātas mūsu datu bāzes.
Norādīja datu bāzes failu glabāšanas vietu. LABI.
Tagad atveram iepriekš izveidotās datu bāzes rekvizītus, kuru atrašanās vietu vēlamies mainīt.
Mainiet rekvizītu Tablespace. Pēc noklikšķināšanas uz "OK", datu bāzes faili tiks automātiski pārvietoti. Gatavs! Mēs ceram, ka raksts jums bija noderīgs. Ja tā, atstājiet komentārus un kopīgojiet saites uz šo lapu. Paldies!