Radite 1C poduzeće pod sql poslužiteljem. Postavljanje Windows vatrozida za rad baze podataka

Ovaj članak sadrži informacije o postupku instalacije 1C u verziji klijent-poslužitelj.

Instalacija 1C platforme opisana je u našem drugom članku - "1C administracija", u odjeljku "1C instalacija". Instalacija na poslužitelj gotovo je ista kao i instalacija na lokalno računalo, samo s jednom razlikom. U verziji poslužitelja, prilikom odabira komponenti za instalaciju, morate odabrati "1C:Enterprise Server" i "1C:Enterprise Server Administration".

Instalirajte 1C na klijentska računala s kojih će se uspostaviti veze s poslužiteljem.

Instalacija na klijentskim računalima ne razlikuje se od metode opisane ranije u članku "1C administracija".

Napravite infobazu u SQL-u.

Izrada baze podataka u SQL-u također je vrlo slična izradi baze podataka u datotečnoj verziji. Razlika je u tome što u fazi odabira vrste lokacije baze podataka morate odabrati "Na poslužitelju 1C: Enterprise".

U stavci "Grupa poslužitelja" navedite naziv (ili još bolje IP adresu) poslužitelja na kojem ste instalirali SQL.

U odjeljku "Naziv baze podataka" navedite bilo koji naziv koji želite dati bazi podataka.

Tip DBMS-a – SQL.

Korisnik baze podataka i njegova lozinka su isti superkorisnik spomenut gore tijekom instalacije MS SQL-a.

Ostavite pomak datuma kao zadani.

Potrebno je označiti opciju “Kreiraj bazu ako ne postoji” i kliknuti na “Dalje”.

Sada je baza podataka uspješno kreirana na SQL poslužitelju i dodana na popis dostupnih baza podataka. Ispod na slici možete vidjeti rezultat obavljenog posla.

Važno je napomenuti da je stvorena baza još uvijek prazna. Ovo je okvir, mjesto dodijeljeno u SQL-u za vašu informacijsku bazu. Kako biste učitali svoju bazu podataka u ovaj okvir, trebate koristiti alate za učitavanje/učitavanje baze podataka. Postupak prijenosa/preuzimanja također je opisan u našem drugom članku "1C administracija".

Kako bi se sustav u budućnosti doveo u idealno stanje bit će potrebno konfigurirati “plan održavanja” za kreiranu bazu podataka. Plan održavanja skup je postupaka koje će SQL redovito izvoditi prema zadanom rasporedu. Na primjer, redovito će izrađivati ​​sigurnosne kopije i brisati privremene datoteke. Rad sa SQL-om je izvan opsega ovog članka i bit će opisan u jednom od sljedećih.


Općenito, postavljanje MS SQL Servera za rad s poduzećem 1C ne razlikuje se mnogo od njegove uobičajene postavke, ali još uvijek postoje neke nijanse koje su eksperimentalno identificirane.

Razmotrimo najviše važne točke u instalaciji i naknadnoj konfiguraciji poslužitelja i baza podataka kako bi se optimizirao rad 1C.

Instalacija MS SQL Servera

Nećemo razmatrati sve korake instalacije i dotaknut ćemo se samo onih točaka koje zahtijevaju posebnu pozornost.

Odabir i konfiguracija komponenti

Za rad s MS SQL Serverom s 1C Enterpriseom samo odaberite sljedeći skup komponenti:

  • Dtabase Engine usluge
  • Komunikacije s klijentskim objektima
  • Kontrole - osnovne
  • Alati za upravljanje - cijeli set (trebat će nam cijeli set za izradu plana održavanja)

Važno! Bolje je navesti direktorij zajedničkih komponenti na zasebnom disku (odvojeno od operativnog sustava). To će povećati brzinu i otpornost na pogreške.

Konfiguracija poslužitelja

Za pokretanje usluga SQL Server Agent i SQL Database Engine, navedite račun. Možete stvoriti zaseban račun s administratorskim pravima ili navesti administratorski račun. Međutim, vrijedi zapamtiti da će se usluga prestati pokretati ako ikada odlučite promijeniti lozinku za račun koji ste ovdje naveli. Stoga koristite račun za koji ne planirate promijeniti lozinku.

Konfiguriranje komponente Database Engine

Određujemo mješoviti način rada i postavljamo lozinku za sa - sistemski račun SQL Servera.

Dodajte račune računala ili domene koji mogu administrirati SQL.

Postavljanje vatrozida za mssql i 1C Server

Stvaramo pravila koja dopuštaju dolazne veze na port 1433 za MS SQL i 1541-1560 za 1C poslužitelj

Mi stvaramo pravilo za program. Put do programa izgledat će otprilike ovako
C:\Programske datoteke\Microsoft SQL Server\MSSQL13. \MSSQL\Binn\sqlservr.exe

Postavljanje svojstava MS SQL poslužitelja za rad s 1C

Pokrenite Microsoft SQL Server Management Studio i spojite se na poslužitelj.

Otvorite prozor svojstava poslužitelja i idite na Memorija. Postavljamo najveću dopuštenu vrijednost alokacije memorije za potrebe SQL poslužitelja. Ako se to ne učini, pojesti će svu slobodnu memoriju, jer je zadana vrijednost 2147483647 MB. Dopuštena vrijednost memorije može se izračunati pomoću formule (koristio sam iskustvo Alekseja Novoselova iz Infostat.ru):
[Ukupna količina RAM-a poslužitelja] – – Na primjer, ako imamo samo 36 GB RAM-a na poslužitelju, instaliran je Windows 2008 i pokrenuto je 8 rphost procesa, tada izračun ide ovako: 36 – 4 – 1,5*8 = 20 GB, postavili smo ograničenje za SQL.

Idite na stavku Procesor. Maksimalan broj Također je bolje postaviti radne niti ručno i postaviti vrijednost na 2048, budući da s vrijednošću 0 broj niti ne smije premašiti 255. Omogućite opciju Održavanje SQL prioriteta.

Naravno, ovi savjeti za postavljanje svojstava poslužitelja nisu lijek i neće biti jednako dobri u svim uvjetima, ali za većinu slučajeva mislim da su sasvim prikladni.

Postavljanje radne baze podataka 1C Enterprise

Otvorite svojstva prilagođene baze podataka.

Sada je najvažnije odlučiti se za model oporavka baze podataka. Oni su konfigurirani u nukt parametrima. Pogledajmo dva glavna modela oporavka.

1. Jednostavno. Trebalo bi ga koristiti u slučaju kada planirate izrađivati ​​sigurnosne kopije jednom dnevno i nije vam važna mogućnost vraćanja s točnošću do određene točke. To može biti 1C računovodstvo ili ZUP gdje nema velikog broja dnevnih transakcija. Napravite jednu sigurnosnu kopiju svake noći i dobro spavajte. Nema poteškoća.

2. Dovršiti. Ovaj model najbolje se koristi za sigurnosno kopiranje baza podataka s velikim brojem unutardnevnih transakcija, na primjer, prodaja u 1C maloprodaji. Uz ovaj model, imat ćete sve transakcije spremljene u zapisnicima i moći ćete vratiti bazu podataka u bilo koje vrijeme. Ali u ovom slučaju morat ćete petljati s postavkama dnevnika transakcija.

Kada se odlučimo za model oporavka, možemo ići na [Datoteke]

Postavka vrste datoteke [Dnevnik] može se preskočiti ako se koristi jednostavan model oporavak.
Ako koristite punu verziju, morate podesiti postavke. Postavite automatsko proširenje na 50 MB. Vrijedno je obratiti pozornost na ograničenje automatskog proširenja i bolje ga je promijeniti jer Zadana vrijednost je veća od 2TB. Za velik broj transakcija npr maloprodaja u 1C Retail, dnevnik transakcija će rasti vrlo brzo i uskoro će vam ponestati slobodnog prostora na vašem pogonu. Stoga je bolje postaviti ograničenje na 10 GB. Ali ovo je samo preporuka, jer sve je individualno i ovisi o broju transakcija.

Prilikom postavljanja ograničenja, vrijedi imati na umu da kada dosegnete ekstremnu vrijednost, dobit ćete pogrešku: "dnevnik transakcija za bazu podataka je pun" i 1C se neće pokrenuti. Kako bi se transakcijski log pravovremeno očistio, potrebno je konfigurirati njegovu sigurnosnu kopiju u planu održavanja baze podataka. Pročitajte kako izraditi plan održavanja baze podataka.

Ali brisanje dnevnika transakcija ne smanjuje veličinu same datoteke, već samo oslobađa slobodan prostor u njoj za nove unose brisanjem neaktivnih dovršenih transakcija.

Ako je zapisnik pun, morat ćete ga ručno obrisati da bi baza podataka radila. Pročitajte kako to učiniti u

U većini slučajeva, za instalaciju 1C:Enterprise 8.x u verziji klijent-poslužitelj, dovoljno je pokrenuti instalacijski program 1C:Enterprise 8.x. U ovom slučaju poslužitelj 1C:Enterprise prima standardne vrijednosti parametara potrebne za njegovo normalno funkcioniranje.

Pogledajmo detaljnije instalaciju poslužitelja 1C:Enterprise. Tijekom instalacije poslužitelja 1C:Enterprise 8.x, instalacijski program 1C:Enterprise 8.x izvodi sljedeće radnje:

* Kopira module za pokretanje poslužitelja 1C:Enterprise u direktorij koji je odredio instalacijski program 1C:Enterprise kao konačnu mapu.
* Ako je tijekom instalacije odabrano "Create user USR1CV81", kreira se korisnik USR1CV81. Poslužitelj 1C:Enterprise 8.1 radi u ime ovog korisnika ako je pokrenut kao usluga. Ima pristup samo onim resursima koji su potrebni poslužitelju 1C:Enterprise. Važno je da poslužitelj 1C:Enterprise za rad zahtijeva dva direktorija: opći direktorij s podacima poslužitelja (obično "C:\Program Files\1cv81\server") i direktorij privremenih datoteka (obično "C:\Documents and Settings \usr1cv81\Lokalne postavke \Temp" ili "C:\WINNT\Temp"). Korisnik USR1CV81 dobiva prava na dijeljeni direktorij s podacima poslužitelja. Direktorij privremenih datoteka obično je dostupan svim korisnicima.
* Ako je tijekom postupka instalacije omogućeno "Instaliraj poslužitelj 1C:Enterprise 8.1 kao Windows uslugu", tada se registrira agentska usluga poslužitelja 1C:Enterprise u sustavu Windows i pokreće je. Prilikom prvog pokretanja stvara se klaster poslužitelja 1C:Enterprise sa zadanim postavkama. Ima jedan radnički poslužitelj i jedan radnički proces. Radna adresa poslužitelja odgovara nazivu računala na kojem je izvršena instalacija.

USR1CV81 ili USR1CV82 korisnik i njegova prava

1C:Enterprise Server je poslužiteljska aplikacija čiji rad ne bi trebao ovisiti o tome koji je korisnik prijavljen na poslužiteljsko računalo u interaktivnom načinu rada, ako je itko uopće prijavljen. Stoga, kada instalirate 1C:Enterprise poslužitelj, preporučljivo je stvoriti posebnog korisnika USR1CV81, obdaren minimalnim pravima potrebnim za 1C:Enterprise poslužitelj, a nije namijenjen za interaktivnu prijavu. Poslužitelj 1C:Enterprise predstavlja Windows sustavu korisnik USR1CV81.

Pogledajmo pobliže prava postavljena za korisnika USR1CV81. 1C:Enterprise poslužitelj koristi sljedeće direktorije:

* Direktorij učitavanja modula nalazi se u direktoriju koji je instalacijski program 1C:Enterprise odredio kao konačnu mapu. Sadrži module za učitavanje poslužitelja 1C:Enterprise. Korisnik USR1CV81 zahtijeva prava za čitanje podataka i pokretanje programa iz ovog direktorija i njegovih poddirektorija. Ta prava prima implicitno uključivanjem u grupu Korisnici.
* Imenik podataka poslužitelja obično se zove "C:\Program Files\1cv81\server". Korisnik USR1CV81 zahtijeva puna prava na ovaj direktorij. Prilikom kreiranja korisnika USR1CV81, instalacijski program 1C:Enterprise daje mu prava na ovaj direktorij.
* Direktorij privremenih datoteka obično se naziva "C:\Documents and Settings\usr1cv81\Local Settings\Temp" ili "C:\WINNT\Temp", što je određeno vrijednošću TEMP varijable okruženja korisnika ili TEMP okruženja sustava varijabla. Vrijednost ove varijable možete vidjeti u dijaloškom okviru Svojstva sustava (Start -> Postavke -> Upravljačka ploča -> Sustav -> Napredno -> Varijable okruženja). Instalacijski program 1C:Enterprise daje korisniku USR1CV81 puna prava na ovaj direktorij. Obično kada Windows instalacije Direktorij privremenih datoteka dostupan je svim korisnicima uključivanjem grupe CREATOR OWNER na njegovu pristupnu listu. Međutim, ovaj pristup nije potpun. Konkretno, pretraživanje datoteka u ovom direktoriju nije dostupno svim korisnicima. Postavljanje korisniku USR1CV81 punih prava na direktorij privremenih datoteka omogućuje poslužitelju 1C:Enterprise da izvodi sve operacije koje su mu potrebne. Popis pristupa možete vidjeti u dijaloškom okviru svojstava imenika na kartici Sigurnost. Prisutnost grupe CREATOR OWNER omogućuje pristup direktoriju bilo kojem korisniku koji kreira bilo koju datoteku u ovom direktoriju ili posjeduje bilo koju datoteku u ovom direktoriju. U tom slučaju će u pristupnoj listi kreirane datoteke umjesto grupe CREATOR OWNER biti upisan korisnik koji je kreirao datoteku. Među korisnicima kojima je dopušten pristup ovom imeniku mora biti korisnik USR1CV81 koji ima puna prava na ovaj imenik.
Važno je imati na umu da je direktorij privremenih datoteka za određenog korisnika (uključujući korisnika USR1CV81) određen kombinacijom varijabli okruženja tog korisnika i varijabli okruženja sustava. Da bi saznao ovaj direktorij, instalacijski program 1C:Enterprise zahtijeva korisnički kontekst USR1CV81. Da bi to učinio u sustavu Windows 2000, korisnik u čije ime se pokreće instalacijski program 1C:Enterprise možda će trebati sljedeće privilegije: Djelovati kao dio operativnog sustava i Zaobići provjeru prijelaza. Korisničke povlastice možete provjeriti pomoću uslužnog programa Local Sequrity Settings u ogranku Local Policies -> User Rights Assignment. U tijeku je ugradnja novog softver Instalater obično dobiva te privilegije automatski.

Registracija poslužitelja 1C:Enterprise kao Windows usluge


1C:Enterprise Server je jednostavna Windows konzolna aplikacija i može se pokrenuti interaktivno. Međutim, za stalnu upotrebu ovo je nezgodno, jer zahtijeva pokretanje poslužitelja 1C: Enterprise od prijave neaktivnog korisnika na računalo poslužitelja. Kako bi se eliminirala ova ovisnost, poslužitelj 1C:Enterprise može se pokrenuti kao Windows usluga. Da biste to učinili, morate ga registrirati u Windows upravitelju usluga.

Za pregled popisa Windows usluga i njihovih parametara upotrijebite uslužni program Component Services (Start -> Postavke -> Upravljačka ploča -> Administrativni alati -> Usluge). Poslužitelj 1C:Enterprise na popisu usluga predstavljen je uslugom "1C:Enterprise Server Agent 8.1". Parametri usluge određuju pokretanje 1C:Enterprise Server Agent procesa (ragent), korisnika pod čijim imenom se pokreće i način ponovnog pokretanja u hitnim situacijama.

U dijaloškom okviru svojstava usluge "1C:Enterprise 8.1 Server Agent", na kartici Općenito, prikazana je linija za pokretanje ragent procesa, koji je 1C:Enterprise Server Agent. Ova linija obično izgleda ovako:


U njemu se navodi da:

* Server Agent proces je modul za pokretanje "C:\Program Files\1cv81\bin\ragent.exe";
* ragent proces radi kao Windows servis i njime mora upravljati upravitelj usluga (-srvc);
* koristi se kao 1C:Enterprise Server Agent (-agent);
* prilikom prvog pokretanja usluge potrebno je kreirati klaster sa zadanim parametrima i glavnim IP portom broj 1541 (-regport 1541). Koristeći ovaj priključak, klijentske aplikacije moraju se povezati s infobazama registriranim u klasteru;
* IP port agenta poslužitelja mora imati broj 1540 (-port 1540). Koristeći ovaj priključak, Cluster Console se mora povezati sa središnjim poslužiteljem za obavljanje administrativnih funkcija;
* prilikom pokretanja procesa klastera na ovaj poslužitelj bit će im dinamički dodijeljeni IP priključci iz raspona 1560-1591 (-raspon 1560:1591).
* opći podaci klastera bit će smješteni u direktoriju "C:\Program Files\1cv81\server" (-d "C:\Program Files\1cv81\server").

Usluga "1C:Enterprise 8.1 Server Agent" može se dodati ili ukloniti ne samo prilikom instalacije ili deinstalacije 1C:Enterprise pomoću instalacijskog programa 1C:Enterprise 8.1, već i ručno. Da biste to učinili, možete izvršiti iz naredbeni redak uslužni program ragent, navodeći odgovarajuće parametre.

Za kreiranje usluge potrebno je navesti parametar -instsrvc i sljedeće parametre: -usr - ime korisnika pod čijim imenom treba pokrenuti uslugu, -pwd - lozinku ovog korisnika. U tom će slučaju preostali parametri postati parametri linije za pokretanje 1C:Enterprise Server Agenta kao usluge. Na primjer, za standardnu ​​registraciju usluge 1C:Enterprise Server Agent u načinu otklanjanja pogrešaka, skup parametara trebao bi biti sljedeći:

"C:\Program Files\1cv81\bin\ragent.exe" -instsrvc -usr .\USR1CV81 -pwd Lozinka -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv81\server" - debug

Za uklanjanje usluge morate navesti parametar -rmsrvc. Na primjer:
"C:\Programske datoteke\1cv81\bin\ragent.exe" -rmsrvc

Ponekad je korisno promijeniti redak za pokretanje agenta poslužitelja ili druge parametre usluge agenta, na primjer, omogućiti način otklanjanja pogrešaka ili stvoriti nekoliko usluga različitih verzija. Dijaloški okvir svojstava usluge ne dopušta vam uređivanje retka za pokretanje aplikacije usluge i nekih drugih parametara, na primjer, identifikatora usluge. Za uređivanje će vam trebati uslužni program regedit, dizajniran za pregled i uređivanje registra sustava Windows.

Pažnja!
Uređivanje registra sustava Windows zahtijeva izuzetan oprez jer pogrešne promjene mogu dovesti do operacijski sustav u neoperabilno stanje.

Pokrenite uslužni program regedit (otvorite Start -> Pokreni i upišite regedit) i odaberite granu:


Među njegovim parametrima je i parametar ImagePath, čija je vrijednost niz pokretanja 1C:Enterprise Server Agenta. Ovdje možete dodati nove parametre niza za pokretanje ili promijeniti vrijednosti postojećih. Cijeli popis mogući parametri navedeni su u dokumentaciji knjige "1C:Enterprise 8.1 Client-Server".

Ako trebate registrirati nekoliko neovisnih usluga 1C:Enterprise Server Agent, trebate ih navesti s različitim modulima za pokretanje, različitim portovima i različitim direktorijima podataka klastera. Također ih morate registrirati s različitim identifikatorima usluga. To se može učiniti ovako:

* Kreirajte prvu uslugu:
"C:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv81\server"

* Pomoću uslužnog programa regedit promijenite identifikator registrirane usluge. Da biste to učinili: odaberite granu
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent First
* Stvorite drugu uslugu:
"C:\Programske datoteke\1cv81_10\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -raspon 1660:1691 -d "C:\Programske datoteke\1cv81_10\server"

* Možda bi mu se trebala promijeniti i osobna iskaznica. Da biste to učinili: odaberite granu
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
i promijeniti mu naziv, na primjer u:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent Second

Što ne može instalacijski program 1C:Enterprise?

Kao što je već spomenuto, instalacijski program 1C:Enterprise kopira module za pokretanje 1C:Enterprise i obavlja potrebnu registraciju u COM iu Windows upravitelju usluga. Gore navedene su informacije potrebne za razumijevanje internih mehanizama ove registracije. Ako na poslužiteljskom računalu nije instaliran samo poslužitelj, već i klijentski dio 1C:Enterprise, tada je spreman za rad odmah nakon instalacije (i povezivanja sigurnosnih ključeva).

Tako da je poslužitelj 1C:Enterprise dostupan s drugih računala u lokalna mreža, morate provjeriti mrežne postavke na poslužitelju i klijentskom računalu, kao i za mrežu u cjelini. TCP/IP se koristi za prijenos podataka između klijentskih aplikacija i poslužitelja 1C:Enterprise, kao i između procesa klastera poslužitelja. Rad 1C:Enterprise u verziji klijent-poslužitelj ovisi o njegovoj ispravnoj konfiguraciji.

Procesi klastera poslužitelja 1C:Enterprise povezuju se jedni s drugima na adresama definiranim kao vrijednosti svojstva "Računalo" u dijaloškom okviru svojstava radnih poslužitelja. Klaster zahtijeva da vrijednost svojstva Computer bude ili IP adresa u zapisu s točkama ili simbolička adresa iz koje se IP adresa može odrediti pomoću funkcije gethostbyname definirane u TCP API-ju. IP adresa se određuje na temelju lokalne simboličke adresne tablice (C:\WINNT\system32\drivers\etc\hosts) ili korištenjem adresnih tablica u dostupnim DNS poslužitelji. Ako simbolička adresa poslužitelja koji radi ne određuje njegovu IP adresu ili je pogrešno određuje (na primjer, IP adresa ne odgovara stvarnoj IP adresi ovog računala), tada klaster neće raditi. Važno je da imena računala i njihove adrese definirane u Windowsima na svakom od radnih poslužitelja u klasteru ne budu u suprotnosti s njihovim imenima u DNS-u.

Na svakom poslužitelju koji radi, procesi klastera koriste sljedeće portove: IP port poslužitelja koji radi (obično 1540); IP portovi iz raspona IP portova tijeka rada (obično 1560-1591). Dodatno, središnji poslužitelj klastera koristi port klastera (obično 1541). Ako sustav koristi vatrozid, tada mora biti dopušten prijenos podataka na tim priključcima. Umjesto dopuštanja priključaka s gornjeg popisa, možete dopustiti prijenos podataka procesima klastera (ragent, rmngr, rphost).

Veza između klijentske aplikacije 1C:Enterprise i poslužitelja izvodi se u 2 faze. Prvo se uspostavlja veza s upraviteljem klastera. Ovo koristi središnju adresu poslužitelja (simboličku ili numeričku) i port klastera (obično 1541). Zatim klijentska aplikacija uspostavlja vezu s jednim od radnih procesa. Kao njegova adresa koristi se vrijednost svojstva "Računalo" odgovarajućeg radnog poslužitelja i port radnog procesa koji je odabran iz niza IP portova radnog poslužitelja. Prijenos podataka na te priključke mora biti dopušten u svim vatrozidima na ruti od računala klijentske aplikacije do računala klastera poslužitelja 1C:Enterprise. IP adresa poslužiteljskih procesa određuje se pomoću funkcije gethostbyname na klijentskom računalu. Važno je da imena središnjih i radnih poslužitelja i njihove adrese definirane u Windowsima na svakom od poslužitelja u klasteru ne budu u suprotnosti s njihovim imenima u DNS-u dostupnom klijentskom računalu.

I još nešto za kraj. Očito, da biste uspješno pristupili poslužitelju 1C:Enterprise s drugih računala, ono mora biti na mreži i za to se moraju izvršiti potrebne postavke. Spajanje na mrežu i načini postavljanja odnose se na administraciju mreža baziranih na Microsoft Windows sustavu i opisani su u odgovarajućim uputama.

Značajke postavljanja SQL poslužitelja

1C:Enterprise u verziji "klijent-poslužitelj" koristi SQL poslužitelj za pohranu podataka. U ovom slučaju samo 1C:Enterprise Server pristupa SQL poslužitelju. Klijenti 1C:Enterprise nemaju izravan pristup SQL poslužitelju. Instalacija i konfiguracija SQL poslužitelja detaljno je opisana u dokumentaciji Microsoft SQL Servera. Za uspješan rad 1C:Enterprise poslužitelji sa SQL poslužiteljem, trebate obratiti posebnu pozornost na sljedeće postavke.

* Potrebne komponente SQL poslužitelja. Za pristup SQL poslužitelju sa strane 1C:Enterprise Servera, komponente Microsoft Data Access 2.6 ili novije moraju biti instalirane na računalu 1C:Enterprise Server.
* Autentikacija korisnika putem SQL poslužitelja. Prava pristupa bazama podataka SQL poslužitelja određuje korisnik u čije se ime pristupa bazama podataka. S računala na kojem je instaliran SQL poslužitelj pokrenite uslužni program SQL Server Enterprise Manager, pronađite lokalni čvor (Console Root -> Microsoft SQL Servers -> SQL Server Group -> (Local)) i otvorite njegova svojstva. Na kartici Sigurnost možete vidjeti da SQL poslužitelj podržava dvije metode provjere autentičnosti korisnika: SQL Server i Windows i samo Windows. Windows provjera autentičnosti omogućit će 1C:Enterprise poslužitelju pristup SQL poslužitelju samo u ime korisnika USR1CV81, što ne dopušta razlikovanje prava pristupa različitim infobazama koje poslužuje jedan 1C:Enterprise poslužitelj. Preporuča se odabrati način rada SQL Server i Windows. U tom slučaju, pristup određenoj infobazi će se vršiti u ime korisnika koji je naveden kao korisnik SQL servera prilikom kreiranja ove infobaze. Važno je da ovaj korisnik mora imati ne samo puna prava na bazu podataka infobaze, već i prava za kreiranje baza podataka u SQL poslužitelju i za čitanje tablica Master baze podataka.
* Mrežni protokoli za pristup SQL poslužitelju. Ako se 1C:Enterprise Server i SQL poslužitelj nalaze na različitim računalima, tada morate konfigurirati protokole mrežnog pristupa SQL poslužitelju. To se može učiniti pomoću SQL Server Client Network Utility. Na kartici Općenito možete odabrati popis mrežnih protokola koji se koriste za pristup SQL poslužitelju. Najbrži i najsvestraniji je korištenje TCP/IP protokola. Kada koristite druge protokole, imajte na umu da neki, kao što su Named Pipes, provode dodatnu provjeru autentičnosti koristeći Windows prilikom razmjene podataka sa SQL poslužiteljem. U tom slučaju, za uspješan rad sa SQL poslužiteljem, korisnik USR1CV81 mora biti registriran na računalu sa SQL poslužiteljem, s odgovarajućim pravima. Pristupni protokol za ovaj SQL poslužitelj može se promijeniti na kartici Alias ​​​​.

Uz članak

Nema sumnje da je kombinacija MS SQL Server + 1C: Enterprise 8 poslužitelj najpopularnija i najčešće korištena kombinacija u svojoj niši. Za njegovu visokokvalitetnu podršku, poželjno je razumijevanje oba proizvoda. Istodobno, u praksi se stručnjak za podršku obično ili specijalizirao za administriranje MS SQL Servera i nije upoznat sa značajkama poslužitelja 1C: Enterprise 8, ili je, obrnuto, specijaliziran za administriranje poslužitelja 1C: Enterprise 8 i nije upoznat sa značajkama MS SQL Servera.

Ovaj je članak napisan kako bi pomogao i tim i drugim stručnjacima, osmišljen kako bi uštedio vaše vrijeme i skrenuo vašu pozornost na najvažnije detalje kada zajedno koristite ove softverske proizvode.

Radi lakšeg razumijevanja informacija, navedene su studije slučaja, bilješke i savjeti (u kurzivu).

Strujni krug s tri veze

Kao što čitatelj možda već zna, baza podataka u ovom slučaju ima troslojnu arhitekturu:

Link 1: MS SQL Server DBMS. "Pohranjuje" i održava bazu podataka, u konačnici obavljajući sve vrste operacija baze podataka. Dakle, performanse baze podataka, brzina i paralelizam čitanja i pisanja podataka uvelike su određeni performansama MS SQL Servera.

Veza 2: Poslužitelj "1C: Enterprise 8". Služi kao posrednik u interakciji između klijenata (korisnika) i MS SQL Servera. Svi klijentski zahtjevi se šalju poslužitelju koji ih “prevodi” u MS SQL Server upitni jezik, prima rezultate izvršavanja tih upita i šalje rezultate klijentu.

Postoji samo mali dio operacija koje se izvode na razini poslužitelja 1C: Enterprise 8, bez pristupa MS SQL-u - to je, posebno, praćenje takozvanih "upravljanih zaključavanja", čitanje i pisanje "parametara sesije". U takvim slučajevima nije potreban pristup DBMS-u, budući da se te operacije ne izvode s podacima baze podataka, već s informacijama pomoćnog poslužitelja.

Link 3: Klijentski dio "1C: Enterprise 8". Pristupa poslužitelju 1C: Enterprise 8, prima rezultate s njega (to je, na primjer, uzorke podataka) i odgovoran je za korisničko sučelje.

– Htio sam najbolje.

Nakon ponovne instalacije poslužitelja 1C: Enterprise 8, korisnici se žale na oštar pad performansi. Stručnjak za implementaciju softvera 1C: Enterprise koji je proveo ponovnu instalaciju samo je iznenađen - kažu da je htio najbolje, sustav je trebao početi raditi brže ... Analiza situacije pokazala je da je poslužitelju 1C: Enterprise 8 dodijeljeno previše resursa : obrađuje (vidi točku 3) rphost je zauzeo 15,5 GB od 16 GB RAM-a poslužitelja, kao rezultat toga, praktički nije bilo dostupnog RAM-a za kompatibilni MS SQL Server.

Rezultat je stalni "swap", nepotrebno opterećenje diskovnog podsustava i izuzetno sporo izvršavanje operacija baze podataka - zbog činjenice da MS SQL Server nema vremena za obradu zahtjeva koji dolaze iz "overclockanog" 1C: Enterprise 8 poslužitelj.

Kompatibilnost proizvoda

Aktualne informacije o verzijama MS SQL Servera koje se preporučuju za korištenje u kombinaciji s 1C: Enterprise 8 možete pronaći na ovoj poveznici http://v8.1c.ru/requirements/.

U vrijeme pisanja ovog članka, programeri 1C preporučuju sljedeće opcije:

      1. SQL Server 2008 R2.
      2. SQL Server 2008, zahtijeva instalaciju servisnog paketa 1 (SP1).
    3. SQL Server 2005, zahtijeva instalaciju servisnog paketa 3 (SP3).



Tehnički je moguće, ali nije preporučljivo koristiti MS SQL Server 2000, zahtijeva instalaciju Service Pack 2 (SP2), a poželjna je instalacija Service Pack 4 (SP4).

Imajte na umu da je ova verzija trenutno zastarjela i nema 64-bitnu verziju za x86-64 arhitekturu.

Bilješka:

Potrebno je obratiti pozornost na postavke operativnog sustava: na primjer, za učinkovit rad M SQL Server 2008 pod OS Server 2008R2 zahtijeva onemogućavanje uravnoteženog načina napajanja i prebacivanje na način maksimalnih performansi.

Instaliranje verzije klijent-poslužitelj "1C: Enterprise 8"

"1C instaliran"

Za jednog od kupaca, instalaciju 1C: Enterprise 8 izvršio je administrator sustava koji nije imao iskustva u radu s 1C: Enterprise 8. I iako je, prema njegovim riječima, "instalirao 1C", na korisničkim računalima nije bilo klijentskog dijela, a na poslužitelju poslužiteljskog dijela. Analiza situacije razjasnila je sliku - komplet 1C: Enterprise 8 uključivao je 2 diska - instalaciju platforme i instalaciju predložaka baze podataka. Administrator nije ulazio u postupak instalacije - i instalirao je predloške baza podataka, umjesto izvršnih datoteka, komponenti platforme.

Naravno, radi se o netipičnom primjeru izrazito nepažljivog odnosa prema poslu.

Prilikom instaliranja "1C: Enterprise 8" trebate uzeti u obzir da se sljedeće instaliraju zasebno:

      Platforma 1C: Enterprise 8 je izvršna aplikacija, integrirano okruženje za razvoj i rad baza podataka. Kada ga pokrenete, odabirete jedan od dva načina rada - “Enterprise” (ljuska korisničke baze podataka) ili “Konfigurator” (integrirano razvojno okruženje). Potpuniji opis možete pročitati na poveznici
      Konfiguracijski predlošci "1C: Enterprise" su datoteka unutarnjeg formata platforme, uz pomoć koje platforma može stvoriti čistu ili demo bazu podataka strukture sadržane u predlošku. Također možete koristiti obrazac ažuriranja za ažuriranje strukture postojeće baze podataka koja je već ispunjena podacima.
      Prilikom postavljanja platforme obratite pozornost na odabir komponenti:





Komponenta 1C: Enterprise možda nije instalirana na poslužitelj(e).

U ovom slučaju poslužitelj će klijentskim računalima omogućiti pristup bazama podataka 1C: Enterprise, ali rad s bazom podataka u korisničkom načinu rada izravno s poslužitelja neće biti moguć.

Bilješka:

64-bitna verzija platforme ne sadrži klijentski dio. Stoga se pri instalaciji na poslužitelj 64-bitne komponente poslužitelja instaliraju zasebno, a 32-bitne komponente klijentske aplikacije zasebno.

Za povezivanje s MS SQL Serverom potrebna je komponenta "1C Server: Enterprise" - to je aplikacijski poslužitelj, poveznica između platforme na klijentskim radnim stanicama i MS SQL Servera.

Moguće je instalirati komponentu u načinu jednostavne aplikacije ili sistemskog servisa, a preporuča se, naravno, druga opcija.

Kada se instalira "kao usluga", ova komponenta će se pokrenuti i izvršiti u ime odabranog korisnika:




Nakon učitavanja, komponenta rađa nekoliko procesa, kao što su: “server agent”, “server cluster manager”, “server worker processs”.

Upiti prema bazi podataka izvršavaju se radničkim procesima, a upravitelj klastera poslužitelja raspoređuje opterećenje između njih.

Radničkim procesima poslužitelja može se upravljati (dodati, brisati, postaviti ograničenja za korištenje RAM-a, proglasiti primarnim ili rezervnim) ako je instalirana komponenta 1C: Enterprise Server Administration.



Bilješka:

Za 32-bitnu verziju poslužitelja preporuča se instalirati radne procese u tolikom broju da RAM ne ostane neiskorišten - svaki od njih ima primjetno ograničenje korištenja RAM-a, od 2 do 4 GB ovisno o sustavu konfiguracija.

Za 64-bitnu verziju poslužitelja teoretski su dovoljna dva radna procesa – jedan radni i jedan rezervni. Međutim, u praksi, da bi se osigurala pouzdanost i stabilnost veza za značajan (nekoliko stotina) broj korisnika, potreban je veći broj, što ovisi o mnogim čimbenicima - o broju korisnika, sadržaju baze i obujmu izvršenih upita, pa autori smatraju da broj procesa u ovom slučaju treba odabrati eksperimentalno.

"Ouroboros"

Nakon neuspješne optimizacije postavki poslužitelja 1C: Enterprise 8, korisnici su prijavili izuzetno spor rad sustava, a administrator sustava primijetio je konstantno 100% opterećenje procesora na poslužitelju.

Analiza situacije pokazala je izvor problema - tijekom konfiguracije postavljeno je premalo ograničenje korištenja RAM-a od strane radnih procesa.

Ali činjenica je da ovo ograničenje funkcionira na sljedeći način:

Kada upravitelj klastera poslužitelja vidi da je radni proces premašio ograničenje RAM-a, proces se prekida, onemogućuje se, stvara se novi radni proces, a veze i korisnički zahtjevi redistribuiraju se između radnih procesa.

Postavljeno ograničenje bilo je tako malo (300 MB) da radni proces nije mogao u potpunosti opsluživati ​​čak ni jednog intenzivnog korisnika - kao rezultat toga, upravitelj klastera poslužitelja neprestano je ponovno pokretao radne procese i ponovno spajao korisnike. Čim je kreiran novi proces i korisnici su se na njega povezali, ograničenje RAM-a gotovo je trenutačno dosegnuto i uzrokovalo je sljedeće ponovno pokretanje. Ovo je uzelo 100% opterećenja procesora.

Komponenta "1C Server: Enterprise" nije potrebna na klijentskim radnim stanicama i tamo se neće moći pokrenuti jer zahtijeva fizičku prisutnost sigurnosnog ključa.

Ako je broj povezanih korisnika mali (manje od 50), aplikacijski poslužitelj obično se instalira na isto računalo na kojem je pokrenut MS SQL Server.

Za sustave s velikim brojem korisnika i/ili velikim volumenom protoka informacija preporučuje se zasebna instalacija, kao i korištenje klastera poslužitelja.

Komponenta "1C: Enterprise Server Administration" također može biti korisna na klijentima - na primjer, uz njegovu pomoć možete vidjeti popis infobaza povezanih s određenim poslužiteljem "1C: Enterprise".

Toplo se preporučuje da ga instalirate na sam poslužitelj.

Pristup

Bilješka:

Da biste provjerili je li pristup omogućen, nije dovoljno koristiti uslužni program za administraciju poslužitelja 1C: Enterprise, a još više prisutnost poslužitelja u "mrežnom susjedstvu" nije dovoljna!

Potrebno je da se svaki klijent prijavi u bazu podataka instaliranu na poslužitelju - samo to daje 100% pouzdanost da je pristup omogućen.

1. Ovisno o sigurnosnim pravilima, MS SQL Server koristi provjeru autentičnosti Windows računa ili provjeru autentičnosti MS SQL Server računa.




U potonjem slučaju, prilikom stvaranja baze podataka 1C: Enterprise, sustav će zatražiti prijavu i lozinku računa MS SQL Server (na primjer, sa), u prvom slučaju prijavu i lozinku treba ostaviti prazne:



i korisnik sustava u čije ime se pokreće 1C: Enterprise poslužitelj mora dobiti prava u MS SQL Serveru, i to:

      puna prava na bazu podataka u kojoj se informacijska baza nalazi
      pristup glavnoj bazi podataka (javna uloga)
      preporučeno - prava za stvaranje baze podataka, inače će se svaka nova baza podataka prvo morati kreirati pomoću MS SQL Severa, a tek potom spojiti na poslužitelj 1C: Enterprise
      preporučeno - pravo na brisanje vaše baze podataka



Na primjer, dotičnom korisniku možete dodijeliti fiksnu ulogu processadmin ili sysadmin.

Savjet.

Ako svi korisnici istovremeno izgube pristup radnoj bazi podataka, potrebno je još jednom provjeriti korisnička prava i uloge u MS SQL Serveru, uključujući i one postavljene za određenu bazu podataka, odnosno mapiranje korisnika:




2. Poslužitelj 1C: Enterprise pristupa MS SQL Serveru preko Microsoft Data Access mehanizma, tako da njegove komponente moraju biti instalirane, a korisnik poslužitelja 1C: Enterprise (vidi prethodni paragraf) mora imati prava za njihovo pokretanje.

3. Komunikacija između klijenata i poslužitelja podržana je TCP protokolom, stoga je potrebno da ovaj protokol podržavaju obje strane. Može doći do problema s podudaranjem naziva poslužitelja i njegove IP adrese, na primjer, ako se koristi peer-to-peer mreža. U tom slučaju trebali biste zabilježiti korespondenciju u datoteku [C:\WINDOWS\] system32\drivers\etc\hosts .

Savjet.

Ako je mreža peer-to-peer, kako biste osigurali stalnu vezu s poslužiteljem, stvorite mrežni pogon koji pristupa bilo kojoj od mapa ovog poslužitelja.

4. Ako se koristi protokol Named Pipes i ako su MS SQL Server i 1C: Enterprise poslužitelj instalirani na različitim računalima, korisnik u čije ime se pokreće 1C: Enterprise poslužitelj mora biti registriran na popisu korisnika računala. na kojem je pokrenut MS SQL Server.

5. U nekim slučajevima može biti potrebna dodatna konfiguracija Windows vatrozida, odnosno dodavanje iznimaka.

6. Neki antivirusni programi mogu blokirati "neželjeni" mrežni promet, pa ćete možda morati dodati na njihove popise isključenja.

7. Izdanje platforme 1C: Enterprise 8 mora biti potpuno identično na klijentu i na poslužitelju.

"Blizanci"

"Jedan od kupaca koristio je dva poslužitelja baze podataka, od kojih je svaki sadržavao jednu radnu bazu podataka. Korisnici su radili - svaki istovremeno s obje baze podataka. Služba za podršku ažurirala je platformu 1C: Enterprise 8 na poslužiteljima i klijentima... A onda su počele pljuštati pritužbe zbog nemogućnosti povezivanja - prvo na jednu ili drugu bazu podataka. Analiza situacije je pokazala da je ažuriranje na klijentima i poslužiteljima radilo više ljudi, a stručnjaci za instalaciju nisu dvaput provjeravali da instaliraju isto izdanje. Dakle , na jednom poslužitelju bilo je jedno izdanje platforme, na drugom - drugo, na polovici klijenata - prvo od ovih izdanja, na drugoj polovici - drugo... Pokazalo se da svaki korisnik ima pristup samo jedna od baza podataka.

Kako bi brzo riješio problem, svaki je korisnik morao instalirati oba izdanja platforme i stvoriti zasebne prečace za prijavu u svaku bazu podataka.

Početne postavke MS SQL Servera i baze podataka

“I tako to funkcionira”

MS SQL Server ističe se jednostavnom inicijalnom instalacijom, pa se ne zamaraju svi administratori njegovim dodatnim konfiguriranjem - nakon izvođenja zadane instalacije baza radi, korisnici su prijavljeni - posao je obavljen. Ovakav pristup gotovo uvijek dovodi do problema koji nastaju nakon otprilike mjesec ili dva - i, naravno, iznenada iu najnezgodnijem trenutku.

Na primjer, ako je baza podataka namijenjena za evidenciju - prije podnošenja porezna prijava Nerijetko treba hitno preračunati pojedine podatke, pa masovno preračunati, recimo, “sve primitke dugotrajne imovine od početka godine”. Štoviše, tijekom radnog dana, bez prekida rada ostalih korisnika baze podataka.

I, naravno, u ovom trenutku će se otkriti da se tijekom takvog ponovnog izračuna baza podataka "zamrzne", ili "sruši", ili ne dopušta drugim korisnicima da rade.

Ova vrsta "Murphyjeva zakona" primjenjuje se na svaku od sljedećih točaka.

Prije nego počnete koristiti MS SQL Server kao DBMS za 1C: Enterprise, preporučuje se:

1. Postavite vrijednost parametra maksimalnog stupnja paralelizma na 1.

To je:

      Nakon spajanja na poslužitelj, unesite svojstva poslužitelja kroz kontekstni izbornik, stavku Svojstva
      zatim odaberite stranicu Napredno i uredite parametar maksimalnog stupnja paralelizma






U suprotnom, neki upiti koje generira poslužitelj 1C: Enterprise mogu uzrokovati pogrešku "Paralelizam unutar upita uzrokovao je mrtvu blokadu vaše naredbe poslužitelja (ID procesa #XX). Ponovno pokrenite upit bez paralelizma unutar upita pomoću opcije savjeta za upit (maxdop 1 )". Nakon ove greške, klijentski dio se često ruši.

Pogreška se neće pojavljivati ​​dosljedno, budući da se plan upita formira različito ovisno o akumuliranoj statistici - očitovat će se na velikim i složenim upitima, odnosno u najnesretnijem trenutku.

2. Napravite plan održavanja koji svake noći smanjuje bazu podataka privremene tablice tempdb. Baza podataka privremenih tablica nije uvijek automatski izbrisana od strane poslužitelja 1C: Enterprise, a ponekad, kao rezultat neuspješno napisanog upita, privremena tablica veličine, na primjer, 50 GB može se stvoriti i ne obrisati. Zbog toga može ponestati prostora na disku, zbog čega se mogu srušiti i klijentski i poslužiteljski dio, a postoji i mali rizik od povrede integriteta podataka.

Odnosno, trebate:

      idite na MS SQL Management Studio
      nakon spajanja na poslužitelj proširite odjeljak "Planovi održavanja".
      izradite novi (ili dodajte postojećem) plan usluge,
      dodajte mu stavku "Izvrši zadatak T-SQL naredbe" (budući da ne možete odabrati tempdb bazu podataka u zadatku "Smanji bazu podataka") s kodom




1.KORISTI
2.
3.KRENITE
4.
5.DBCC SHRINKFILE (N"tempdev", 0, TRUNCATEONLY)
6.
7.KRENI
8.
9.DBCC SHRINKFILE (N"templog", 0, TRUNCATEONLY)
10.
11.KRENITE

Imajte na umu da naziv datoteke baze podataka privremene tablice ne mora biti "tempdev". Možete koristiti skriptu da provjerite ovo ime

1.KORISTI tempdb
2.
3.KRENITE
4.
5.EXEC sp_helpfile
6.
7.KRENI




“Lonac, ne kuhaj”

Najčešći način u praksi da se prepuni tempdb i time sruši poslužitelj je zaboraviti navesti uvjet prilikom spajanja tablica.

Naime, recimo da u bazi podataka imamo dvije tablice, svaka veličine 20 tisuća zapisa. Recimo da postoji korespondencija jedan na jedan između njihovih zapisa, a mi napišemo upit koji stvara privremenu tablicu koja sadrži 20 tisuća zapisa s poljima iz obje izvorne tablice. Ali ako zaboravimo navesti uvjet spajanja, svaki zapis prve tablice bit će spojen sa svakim zapisom druge! Odnosno, rezultirajuća tablica sastojat će se od 20 000 * 20 000 = 400 milijuna zapisa. I tako dalje.

3. Kako bi se smanjilo opterećenje diskovnog podsustava, preporuča se, ako je moguće, distribuirati radnu bazu podataka i tempdb, zapisnike i swap datoteku sustava na različite fizičke diskove.

Bolje je postaviti željenu stazu za pohranu datoteka radne baze podataka prilikom njezine izrade uređivanjem stupca Put:




Za promjenu fizičke lokacije datoteka privremene tablice baze podataka koristite naredbu ALTER DATABASE, odnosno u MS SQL Management Studio potrebno je pokrenuti sljedeću skriptu (naredba "New query")

1.USE master
2.
3.KRENITE
4.
5.ALTER DATABASE tempdb
6.
7.IZMIJENI DATOTEKU (NAZIV = tempdev, NAZIV DATOTEKE = "Novi_disk:\Novi_direktorij\tempdb.mdf")
8.
9.KRENI
10.
11.ALTER DATABASE tempdb

12.
13.MODIFY FILE (NAME = templog, FILENAME = "New_Disk:\New_Directory\templog.ldf")
14.
15.KRENI

4. "Rast" radne baze podataka i njezinog dnevnika ne bi trebao biti ometan - ne bi trebalo biti ograničenja veličine, svojstvo "Autogrowth" bi trebalo biti postavljeno kao postotak, preporučena vrijednost je 10%. U suprotnom, dodavanje podataka u bazu podataka, vraćanje iz arhive i druge operacije mogu trajati neopravdano dugo.

Da biste postavili ovo svojstvo, morate otići do svojstava baze podataka kroz kontekstni izbornik, odabrati odjeljak Datoteke i otvoriti uređivanje svojstava datoteke:



5. Preporuča se omogućiti podršku za TCP/IP mrežni protokol u MS SQL Serveru i onemogućiti sve ostale, inače suradnja MS SQL Server i 1C poslužitelj: poduzeća će biti manje stabilna.




6. Na istom mjestu - očistite odjeljak Alias ​​​​jer njegova instalacija dovodi do pogrešaka u interakciji između MS SQL Servera i 1C: Enterprise poslužitelja.

Prije početka korištenja baze podataka preporučuje se:

1. Prilikom izrade baze podataka iz "1C: Enterprise", postavite "pomak datuma" na 2000, inače će pokušaj snimanja datuma ranijeg od 01.01.1753 (što je moguće zbog ljudskog faktora) uzrokovati kvarove u baza podataka.

Pažnja! Odmak datuma ne može se promijeniti za postojeću bazu podataka!



2. Postavite model oporavka na Jednostavan ili izradite plan održavanja koji će kreirati dnevnu sigurnosnu kopiju baze podataka i skraćivati ​​dnevnik transakcija (log datoteka). U suprotnom, tijekom nekih operacija zapisnik transakcija (log datoteka) će rasti vrlo brzo: na primjer, prilikom restrukturiranja baze podataka, porast veličine datoteke dnevnika može biti nekoliko puta veći od veličine same baze podataka.




3. Napravite plan održavanja koji obavlja sljedeće rutinske zadatke najmanje jednom tjedno:

      Izrada sigurnosne kopije baze podataka.
      Ažurirajte statistiku baze podataka i očistite proceduralnu predmemoriju (imajte na umu da svojstvo statistike automatskog ažuriranja ne podrazumijeva brisanje proceduralne predmemorije).
      Brisanje proceduralne predmemorije nije uključeno u standardne operacije planova održavanja; ovaj korak mora biti definiran kao izvršavanje skripte (Izvrši T-SQL naredbu) sa sljedećim sadržajem:
      DBCC FREEPROCCACHE
      Ponovno indeksiranje tablica baze podataka.






Naravno, ima smisla postaviti automatsko slanje e-mailova o uspješno/neuspješno obavljenim zadacima.




Zaključak

Pitanja koja najčešće uzrokuju poteškoće administratorima sustava i implementatorima 1C: Enterprise 8 razmatraju se u vezi sa zajedničkom upotrebom MS SQL Servera i klijent-poslužiteljske verzije 1C: Enterprise 8.

Autor se nada da je pokrio “obje strane medalje” na prilično dosljedan i pristupačan način.

p.s. Često pravite sigurnosne kopije!

Tema instaliranja MS SQL Servera obično se zanemaruje. Doista, teško je ne instalirati ovaj DBMS, čak i ako to radite prvi put, a jednako je teško ne pokrenuti 1C:Enterprise Server zajedno s njim. Međutim, postoji niz neočitih suptilnosti koje mogu značajno zatrovati život administratora, o čemu ćemo danas govoriti.

MS SQL Server zauzima prvo mjesto u broju implementacija u kombinaciji s 1C: Enterprise, to je uglavnom zbog niske barijere za ulazak; osoba bez iskustva sasvim je sposobna svladati ovu kombinaciju, isključivo korištenjem metode Next - Next - Finish. I što je najzanimljivije, sve će to uspjeti. Recimo više, u velikoj većini slučajeva zadane postavke SQL poslužitelja više su nego dovoljne da osiguraju produktivan rad 1C: Enterprise poslužitelja, a njihovo dodirivanje nije samo nepotrebno, već čak i štetno.

Prije svega, trebali biste zapamtiti bazu sustava tempdb, koji aktivno koristi 1C za pohranjivanje privremenih tablica i međurezultata. Štoviše, odmah ga koriste sve 1C baze podataka koje rade na poslužitelju. A budući da se prema zadanim postavkama nalazi u instalacijskoj mapi SQL poslužitelja, tj. na disku sustava, onda kada se opterećenje poveća, jest tempdb postaje usko grlo za cijeli poslužitelj. Vrlo često to dovodi do situacija: kupili ste brzi HDD / SSD, ima dovoljno diskovnih resursa, ali 1C je spor, što može izazvati ozbiljne poteškoće za administratore početnike.

Druga točka. Kodiranje usporedbe tempdb mora odgovarati kodiranju usporedbe baza podataka, inače to može u nekim slučajevima dovesti do neočekivanih rezultata, čak i ozbiljnih pogrešaka u izračunima.

U isto vrijeme, ove poteškoće uopće nije teško izbjeći, samo trebate provesti nekoliko dodatnih minuta tijekom instalacije ili pažljivo pregledati postavke već instaliranog poslužitelja.

Instalacija MS SQL Servera za rad s 1C:Enterprise

Kao što smo već rekli, instalacija SQL poslužitelja iznimno je jednostavna i nećemo detaljno opisivati ​​ovaj proces, fokusirajući se samo na potrebne postavke. Počnimo s odabirom komponenti, budući da 1C ne koristi većinu mehanizama SQL poslužitelja i ako ih nećete koristiti u druge svrhe, ostavljamo samo Motor baze podataka,Komunikacije s klijentskim objektima I Kontrole(neobavezno).

Alati za upravljanje ne moraju biti instalirani na poslužitelju, ali se mogu zasebno instalirati radno mjesto administrator i od tamo upravljati svim dostupnim MS SQL poslužiteljima.

Također biste trebali provjeriti parametre sortiranja; ako su regionalne postavke ispravno konfigurirane, najvjerojatnije tamo nećete morati ništa mijenjati, ali preporučljivo je provjeriti ovaj parametar, trebao bi biti tamo Ćirilica_Opće_CI_AS.

U Konfiguracije poslužitelja molimo navedite Mješoviti način provjere autentičnosti i postavite lozinku SQL superkorisniku - sa. Ispod također navedite administratore ove instance SQL poslužitelja; prema zadanim postavkama već postoji račun pod kojim je izvršena instalacija, ali ako i drugi korisnici moraju administrirati ovu instancu, ima smisla odmah ih naznačiti.

Sljedeća oznaka - Imenici podataka- zahtijeva najveću pozornost. Svakako navedite mjesto pohrane za korisničke baze podataka i bazu podataka tempdb prostor na nizu performansi ili zasebnom disku. Unatoč činjenici da je mjesto baze podataka moguće odrediti prilikom njezine izrade, postavljanje ispravnih zadanih postavki spašava vas od nepotrebnog rada, kao i situacije kada se baza kreira pomoću 1C alata i završi u zadanom direktoriju, tj. na disku sustava. Također možete odmah odrediti direktorij za pohranu sigurnosnih kopija.

Preostale postavke možete ostaviti kao zadane i dovršiti instalaciju.

Postavljanje MS SQL Servera za rad s 1C:Enterprise

Ako imate posla s već instaliranom instancom SQL Servera, provjerite je li kodiranje za usporedbu Ćirilica_Opće_CI_AS, inače podatke treba preuzeti pomoću 1C alata i ponovno instalirati poslužitelj (ili instalirati drugu instancu ako ovu koriste drugi servisi).

Da biste to učinili, otvorite Management Studio, odaberite željenu instancu SQL poslužitelja i desnom tipkom miša kliknite na nju i idite na Svojstva.

Zatim idite na oznaku Memorija i označite količinu RAM-a koja je dostupna SQL poslužitelju, inače će SQL poslužitelj pokušati reciklirati svu raspoloživu memoriju. U situaciji kada su uloge SQL poslužitelja kombinirane s drugim ulogama, au malim i srednjim implementacijama obično se nalazi na istom stroju s 1C poslužiteljem, trebali biste od ukupne količine memorije koja je potrebna sustavu oduzeti i 1C poslužitelj, dajući SQL ono što je ostalo.

Ovdje je teško dati nedvosmislene preporuke; sve ovisi o količini podataka koji se obrađuju; u praksi ima smisla dodijeliti polovicu slobodne memorije SQL poslužitelju, naknadno prilagoditi dana vrijednost na temelju njegovog stvarnog opterećenja.

Sljedeća postavka odnosit će se na sigurnost. Za povezivanje 1C s poslužiteljem najčešće se koristi račun sa, koji je, blago rečeno, nesiguran, jer daje osobi koja ulazi ispod njega puni pristup na SQL poslužitelj. S obzirom da administraciju baza podataka 1C često provode stručnjaci trećih strana, ima smisla stvoriti zaseban račun za njih.

Da biste to učinili, otvorite Sigurnost - Prijave i kreirajte novo ime (račun), odredite autentifikaciju SQL poslužitelj i postavite lozinku.

Zatim idite na oznaku Uloge poslužitelja i dopustiti dbcreator, administrator procesa I javnost.

Zatim koristite ovaj račun za povezivanje na SQL poslužitelj iz 1C.

Druga postavka odnosi se na već stvorene baze podataka, otvorite svojstva željene baze podataka i idite na karticu Datoteke. Pronađite opciju Automatski rast/maksimalna veličina za podatkovnu datoteku. Prema zadanim postavkama, to je 1 MB, što je vrlo neoptimalno; kada aktivno radi s bazom podataka, DBMS će se baviti samo povećanjem veličine datoteke; osim toga, kada nekoliko baza podataka aktivno radi, to će dovesti do značajne fragmentacije podatkovne datoteke. Stoga, na temelju veličine baze podataka i radne aktivnosti, postavite višu vrijednost koja neće dovesti do stalnog povećanja datoteke baze podataka.

Prijenos tempdb baze podataka

Za kraj našeg članka, vratimo se ponovno na bazu podataka tempdb, često postoje situacije kada se datoteka ove baze podataka mora premjestiti na drugo mjesto. Na primjer, poslužitelj je instaliran sa zadanim postavkama i tempdb koji se nalazi na sistemskoj particiji ili ste kupili SSD i želite tamo prenijeti ne samo baze podataka, već i tempdb(što je ispravno rješenje). Također pod velikim opterećenjem tempdb Preporučljivo je staviti ga na poseban disk.

Za promjenu lokacije datoteke tempdb otvoren Management Studio, Izaberi Kreirajte zahtjev te u prozor koji se otvori unesite sljedeći tekst gdje E:\NOVA_MAPA- nova lokacija baze:

Koristite master
promijeniti bazu podataka tempdb
izmijeniti datoteku (
ime = tempdev,
naziv datoteke = N"E:\NOVA_MAPA\tempdb.mdf")
ići

promijeniti bazu podataka tempdb
izmijeniti datoteku (
naziv = templog,
naziv datoteke = N"E:\NOVA_MAPA\templog.ldf")
ići

Zatim kliknite Izvršiti, nakon izvršenja zahtjeva ponovno pokrenite SQL poslužitelj, bazu podataka i datoteke dnevnika tempdbće se stvoriti na novom mjestu, datoteke na starom mjestu moraju se ručno izbrisati.

Danas ćemo završiti ovdje, konačno vas podsjećajući da ne zaboravite na održavanje baze podataka i sigurnosne kopije.

Razmotrimo pitanja instaliranja i konfiguriranja MS SQL Servera za 1C.

Prvo što bih želio napomenuti je da način instaliranja MS SQL Servera uvelike ovisi o očekivanom opterećenju 1C.

Ovisno o tome, mogu se identificirati sljedeće opcije:

  • Opcija 1. Poduzeće s do 500 transakcija dnevno;
  • opcija 2. Poduzeće s više od 500 transakcija dnevno, ali uglavnom neinteraktivno (preuzimanje plaćanja s interneta i banke klijenta, preuzimanje narudžbi iz online trgovine, automatsko generiranje skladišnih i transportnih operacija itd.);
  • Opcija 3. Poduzeće s više od 500 transakcija dnevno, od kojih je većina interaktivna, tj. pokrenuti i formalizirani od strane korisnika.

Za prve dvije opcije, MS SQL Server može se instalirati na istom poslužitelju na kojem je instaliran 1C, što je posebno istinito za drugu opciju, pod uvjetom da su zadovoljeni hardverski zahtjevi. Ali u trećem slučaju, MS SQL Server treba instalirati samo na zasebnom poslužitelju.

Pogledajmo karakteristike hardvera za sva tri slučaja

Ako je instaliran na zasebnom poslužitelju:

CPU

  • Opcija 1. Najmanje 1,8 GHz (po mogućnosti 2 jezgre)
  • Opcija 2. Najmanje 2x2GHz sa najmanje 2 jezgre
  • Opcija 3. Najmanje 4x3GHz sa najmanje 4 jezgre
  • Opcija 1. Najmanje 8 GB
  • Opcija 2. Najmanje 32 GB
  • Opcija 3. Najmanje 128 GB

Diskovni podsustav

  • Opcija 1. SAS najmanje 120 GB
  • Opcija 2. SAS od najmanje 500 GB (po mogućnosti SSD)
  • Opcija 3. SAS najmanje 1 TB (preporučuje se SSD)

Mrežna veza

  • Opcija 1. Najmanje 1 Gb/s
  • Opcija 2. Najmanje 1 Gb/s (po mogućnosti optika)
  • Opcija 3. Najmanje 1 Gb/s (preporučuje se optika)

U slučaju zajedničke instalacije s 1C Enterprise poslužiteljem:

CPU

  • Opcija 1. Najmanje 2x2GHz sa najmanje 2 jezgre
  • Opcija 2. Najmanje 4x3 GHz s najmanje 4 jezgre
  • Opcija 1. Najmanje 32 GB
  • Opcija 2. Najmanje 128 GB
  • Opcija 3. Strogo je zabranjeno to učiniti

Diskovni podsustav

  • Opcija 1. SAS od najmanje 500 GB (po mogućnosti SSD)
  • Opcija 2. SSD najmanje 1 TB
  • Opcija 3. Strogo je zabranjeno to učiniti

Mrežna veza

  • Opcija 1. Po mogućnosti 1 Gb/sec
  • Opcija 2. Po mogućnosti 1 Gb/sec
  • Opcija 3. Strogo je zabranjeno to učiniti

Treba napomenuti da ovo minimalni zahtjevi za ugodan rad. Precizniji parametri odabiru se na temelju specifične situacije, vođeni osnovnim potrebama MS SQL Servera za 1C u diskovnom podsustavu i količini RAM-a.

Prijeđimo sada izravno na postupak instalacije MS SQL Servera za 1C u verziji MS SQL Server 2014 na operativnom sustavu MS Windows Server 2012

Prije svega, trebate prepisati distribuciju instalacije MS SQL Servera za 1C na lokalnu HDD poslužitelj.

Pokrenite instalaciju MS SQL Servera za 1C kao administrator.


U prozoru koji se otvori odaberite "Instaliraj" na desnoj ploči.


Započet će instalacija MS SQL Servera za 1C. Tijekom instalacije od vas će se tražiti da unesete ključ proizvoda i pregledate uvjete licenciranja. Nakon toga trebate odabrati ulogu poslužitelja odabirom “Instaliraj komponente MS SQL Servera”.


Sljedeći korak je odabir komponenti za instalaciju. Obično su svi odabrani, ali ako nisu, kliknite gumb "Odaberi sve".



Ne mijenjajte ništa, tj. Pritisnite "Dalje" dok se ne pojavi prozor "Konfiguracija mehanizma baze podataka". U ovom prozoru, na prvoj kartici, odredite korisnika “sa” i postavite mu lozinku (možete dodijeliti i Windows korisnik, ali korisnik "sa" smatra se sigurnijim).


Na druge dvije kartice možete konfigurirati nove direktorije za pohranu korisničkih baza podataka (ali bolje je ne mijenjati).

Sada ste instalirali MS SQL Server za 1C

"Otvorimo" naš MS SQL Server za 1C. Da biste to učinili, idite na aplikacije i tamo pronađite SQL Server 2014 Management Studio.



Nakon povezivanja u stablu s lijeve strane odaberite “Sigurnost”, au njemu “Imena za prijavu”. Desnim klikom odaberite “Create Login” iz podizbornika. U obrascu koji se otvori navedite korisničko ime i lozinku (zapamtite ovu lozinku i ovog korisnika, jer to ćete navesti prilikom povezivanja baza podataka s 1C poslužitelja).



Idite na “Protected objects” i postavite pravo za povezivanje na SQL, kao na slici.


Kliknite na “OK”. Instalacija MS SQL Servera za 1C i njegova konfiguracija je završena.

Prijeđimo na povezivanje 1C baze podataka na 1C poslužitelju

Pokrenite konzolu za administraciju poslužitelja 1C:Enterprise.


Popunite dijalog koji se otvori kao što je prikazano na slici.<Имя базы на латинице>- navedite naziv vaše baze podataka.<Имя компа MS SQL Server>- navedite naziv računala na kojem ste prethodno instalirali MS SQL Server za 1C.


Kliknite na “OK”. Baza je spojena.

Bazu podataka možete povezati izravno iz dijaloškog okvira za povezivanje baze podataka 1C.

Da biste to učinili, pokrenite dijaloški okvir za otvaranje 1C baza podataka i kliknite gumb "Dodaj".


U prozoru koji se pojavi odaberite "Izradi novu informacijsku bazu".


U sljedećem prozoru odaberite željeni predložak u stablu ili označite “Stvaranje nove baze podataka bez konfiguracije...”.

U sljedećem prozoru postavite naziv baze podataka i označite da će biti na poslužitelju 1C:Enterprise.


Na sljedećoj kartici ispunite polja na isti način kao što je opisano u odjeljku povezivanje baze podataka s 1C poslužitelja.


Završena je optimizacija SQL-a za 1C. Možete pokrenuti i raditi.