Instalacija servera za 1s.

Tema instaliranja MS SQL Servera se obično zanemaruje. Zaista, 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čiglednih suptilnosti koje mogu značajno zatrovati život administratora, o čemu ćemo danas govoriti.

MS SQL Server je na prvom mjestu po broju implementacija u kombinaciji s 1C:Enterprise, to je u velikoj mjeri zbog niske barijere za ulazak u situaciju da je osoba bez iskustva sasvim sposobna da savlada ovu kombinaciju, isključivo koristeći metodu Next - Next - Finish. I, što je najzanimljivije, sve će ovo raditi. Recimo više, u ogromnoj većini slučajeva, zadane postavke SQL servera su više nego dovoljne da osiguraju produktivan rad 1C: Enterprise servera i njihovo dodirivanje nije samo nepotrebno, već je čak i štetno.

Prije svega, trebali biste zapamtiti o bazi sistema tempdb, koji 1C aktivno koristi za pohranjivanje privremenih tablica i međurezultata. Štaviše, odmah ga koriste sve 1C baze podataka koje rade na serveru. A pošto se po defaultu nalazi u instalacionom folderu SQL servera, tj. na sistemskom disku, onda kada se opterećenje poveća, jeste tempdb postaje usko grlo za cijeli server. Vrlo često to dovodi do situacija: kupili ste brzi HDD / SSD, ima dovoljno resursa na disku, ali 1C je spor, što može uzrokovati ozbiljne poteškoće početnicima administratorima.

Druga tačka. Kodiranje za poređenje tempdb mora odgovarati kodiranju poređenja baza podataka, inače to može u nekim slučajevima dovesti do neočekivanih rezultata, čak i do ozbiljnih grešaka u proračunima.

U isto vrijeme, ove poteškoće nije nimalo teško izbjeći, potrebno je samo provesti nekoliko dodatnih minuta tokom instalacije ili pažljivo pregledati postavke već instaliranog servera.

Instalacija MS SQL Servera za rad sa 1C:Enterprise

Kao što smo već rekli, instaliranje SQL servera je izuzetno jednostavno i nećemo detaljno opisivati ​​ovaj proces, fokusirajući se samo na potrebna podešavanja. Počnimo s odabirom komponenti, budući da 1C ne koristi većinu mehanizama SQL servera i ako ih nećete koristiti u druge svrhe, ostavljamo samo Database Engine,Client Facilities Communications I Kontrole(opciono).

Alati za upravljanje se ne mogu instalirati na server, već se zasebno instaliraju na radnoj stanici administratora i odatle upravljaju svim dostupnim MS SQL serverima.

Također biste trebali provjeriti parametre sortiranja, ako imate ispravno konfigurisane regionalne postavke, onda najvjerovatnije nećete morati ništa mijenjati tamo, ali preporučljivo je provjeriti ovaj parametar, on bi trebao biti tamo; Cyrillic_General_CI_AS.

IN Konfiguracije servera molimo navedite Miješani način provjere autentičnosti i postavite lozinku za SQL superkorisnika - sa. U nastavku također navedite administratore ove instance SQL servera, prema zadanim postavkama, već postoji nalog pod kojim je izvršena instalacija, ali ako i drugi korisnici moraju administrirati ovu instancu, onda ih ima smisla odmah naznačiti.

Sljedeća oznaka - Imenici podataka- zahtijeva najveću pažnju. Obavezno navedite lokaciju pohrane za korisničke baze podataka i bazu podataka tempdb prostor na nizu performansi ili zasebnom disku. Unatoč činjenici da se lokacija baze podataka može odrediti prilikom njenog kreiranja, postavljanje ispravnih zadanih postavki štedi vas od nepotrebnog rada, kao i od situacije kada se baza podataka kreira pomoću 1C alata i završi u zadanom direktoriju, tj. na sistemskom disku. Također možete odmah odrediti direktorij za pohranjivanje rezervnih kopija.

Možete ostaviti preostale postavke kao zadane i završiti instalaciju.

Podešavanje MS SQL Servera za rad sa 1C:Enterprise

Ako imate posla s već instaliranom instancom SQL Servera, uvjerite se da je kodiranje za usporedbu Cyrillic_General_CI_AS, u suprotnom podatke treba preuzeti pomoću 1C alata, a server ponovo instalirati (ili instalirati drugu instancu ako ovu koriste drugi servisi).

Da biste to učinili, otvorite Management Studio, izaberite potrebnu instancu SQL servera i kliknite desnim tasterom miša na nju i idite na Svojstva.

Zatim idite na bookmark Memorija i naznačite količinu RAM-a koja je dostupna SQL serveru, inače će SQL server pokušati da reciklira svu raspoloživu memoriju. U situaciji kada su uloge SQL servera kombinovane sa drugim ulogama, a u malim i srednjim implementacijama obično se nalazi na istoj mašini sa 1C serverom, trebalo bi da oduzmete od ukupne količine memorije potrebne sistemu i 1C server, dajući SQL-u ono što ostaje.

Ovdje je teško dati jednoznačne preporuke, sve ovisi o količini podataka koji se obrađuju u praksi, ima smisla dodijeliti polovicu slobodne memorije SQL serveru, naknadno prilagođavajući ovu vrijednost na osnovu njegovog stvarnog opterećenja.

Sljedeća postavka će se odnositi na sigurnost. Za povezivanje 1C na server najčešće se koristi račun sa, što je, najblaže rečeno, nesigurno, jer daje onome ko uđe ispod njega pun pristup na SQL server. S obzirom na to da administraciju 1C baza podataka često provode stručnjaci trećih strana, ima smisla stvoriti poseban račun za njih.

Da biste to učinili, otvorite Sigurnost - prijave i kreirajte novo ime (nalog), navedite autentifikaciju SQL server i postavite lozinku.

Zatim idite na bookmark Uloge servera i dozvoliti dbcreator, processadmin I javnosti.

Zatim koristite ovaj nalog za povezivanje sa SQL serverom iz 1C.

Druga postavka se odnosi na već kreirane baze podataka, otvorite svojstva željene baze podataka i idite na karticu Fajlovi. Pronađite opciju Automatski rast/maksimalna veličina za fajl sa podacima. Podrazumevano, to je 1 MB, što je vrlo neoptimalno kada se aktivno radi sa bazom podataka, DBMS će se baviti samo povećanjem veličine datoteke, osim toga, kada nekoliko baza podataka radi, to će dovesti do značajne fragmentacije; datoteke sa podacima. Stoga, na osnovu veličine baze podataka i radne aktivnosti, postavite veću vrijednost koja neće dovesti do stalnog povećanja datoteke baze podataka.

Prijenos tempdb baze podataka

Da zaključimo naš članak, vratimo se ponovo bazi podataka tempdb, često se dešavaju situacije kada fajl ove baze podataka treba premjestiti na drugu lokaciju. Na primjer, server 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đe pod velikim opterećenjem tempdb Preporučuje se da ga stavite na poseban disk.

Za promjenu lokacije datoteke tempdb otvoren Management Studio, izaberite Kreirajte zahtjev i u prozor koji se otvori unesite sljedeći tekst gdje E:\NEW_FOLDER- nova lokacija za bazu:

Koristi master
alter baze podataka tempdb
modificirati fajl (
ime = tempdev,
naziv datoteke = N"E:\NEW_FOLDER\tempdb.mdf")
idi

alter baze podataka tempdb
modificirati fajl (
naziv = templog,
naziv datoteke = N"E:\NEW_FOLDER\templog.ldf")
idi

Zatim kliknite Izvrši, nakon izvršenja zahtjeva, ponovo pokrenite SQL server, bazu podataka i datoteke dnevnika tempdbće biti kreirane na novoj lokaciji, fajlovi na staroj lokaciji moraju se ručno izbrisati.

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

U većini slučajeva, da biste instalirali 1C:Enterprise 8.x u verziji klijent-server, dovoljno je pokrenuti instalacijski program 1C:Enterprise 8.x. U tom slučaju, server 1C:Enterprise prima standardne vrijednosti parametara potrebne za njegovo normalno funkcioniranje.

Pogledajmo detaljnije instaliranje servera 1C: Enterprise. Tokom instalacije servera 1C:Enterprise 8.x, instalacioni program 1C:Enterprise 8.x obavlja sljedeće radnje:

* Kopira module za pokretanje 1C:Enterprise servera u direktorij naveden u instalacijskom programu 1C:Enterprise kao konačnu mapu.
* Ako je tokom instalacije odabrano "Kreiraj korisnika USR1CV81", kreira korisnika USR1CV81. Server 1C:Enterprise 8.1 radi u ime ovog korisnika ako je pokrenut kao usluga. Ima pristup samo onim resursima koji su potrebni serveru 1C:Enterprise. Važno je da 1C:Enterprise server zahtijeva dva direktorija za rad: opći direktorij sa podacima servera (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 prima prava na dijeljeni direktorij s podacima poslužitelja. Direktorij privremenih datoteka obično je dostupan svim korisnicima.
* Ako je tokom procesa instalacije omogućena „Instaliraj 1C:Enterprise 8.1 server kao Windows uslugu“, tada registruje uslugu agenta servera 1C:Enterprise u Windows-u i pokreće je. Prilikom prvog pokretanja kreira se klaster 1C:Enterprise servera sa zadanim postavkama. Ima jedan radni server i jedan radni proces. Radna adresa servera odgovara imenu računara na kojem je izvršena instalacija.

Korisnik USR1CV81 ili USR1CV82 i njegova prava

1C:Enterprise Server je serverska aplikacija čiji rad ne bi trebao ovisiti o tome koji korisnik je prijavljen na serverski računar u interaktivnom načinu rada, ako je iko uopće prijavljen. Stoga je pri instaliranju 1C:Enterprise servera preporučljivo kreirati posebnog korisnika USR1CV81, koji ima minimalna prava potrebna za 1C:Enterprise server, a nije namijenjen za interaktivnu prijavu. Server 1C:Enterprise Windows sistemu predstavlja korisnik USR1CV81.

Pogledajmo bliže postavljena prava za korisnika USR1CV81. 1C:Enterprise server koristi sljedeće direktorije:

* Direktorij modula za učitavanje nalazi se u direktoriju koji je instalacijski program 1C:Enterprise naveo kao konačnu mapu. Sadrži module za učitavanje servera 1C:Enterprise. Korisnik USR1CV81 zahtijeva prava za čitanje podataka i pokretanje programa iz ovog direktorija i njegovih poddirektorija. Ova prava prima implicitno tako što je uključen u grupu Korisnici.
* Direktorij podataka servera se obično naziva "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 varijable TEMP okruženja korisnika ili sistemskog okruženja TEMP varijabla. Možete vidjeti vrijednost ove varijable u dijalogu Svojstva sistema (Start -> Postavke -> Kontrolna tabla -> Sistem -> Napredno -> Varijable okruženja). Instalacijski program 1C:Enterprise daje korisniku USR1CV81 puna prava na ovaj direktorij. Obično, kada instalirate Windows, direktorij privremenih datoteka je dostupan svim korisnicima uključivanjem grupe CREATOR OWNER u svoju pristupnu listu. Međutim, ovaj pristup nije pun. Konkretno, traženje datoteka u ovom direktoriju nije dostupno svim korisnicima. Postavljanje punih prava korisnika USR1CV81 na direktorij privremenih datoteka omogućava poslužitelju 1C:Enterprise da izvrši sve operacije koje su mu potrebne. Listu pristupa možete pogledati u dijalogu svojstava direktorija na kartici Sigurnost. Prisustvo grupe CREATOR OWNER omogućava pristup direktoriju svakom korisniku koji kreira bilo koju datoteku u ovom direktoriju ili posjeduje bilo koju datoteku u ovom direktoriju. U ovom slučaju, u pristupnu listu kreiranog fajla, umesto grupe CREATOR OWNER, biće upisan korisnik koji je kreirao fajl. Među korisnicima kojima je dozvoljen pristup ovom direktoriju mora biti korisnik USR1CV81, koji ima puna prava na ovaj direktorij.
Važno je imati na umu da je direktorij privremenih datoteka za određenog korisnika (uključujući korisnika USR1CV81) određen kombinacijom varijabli okoline tog korisnika i varijabli sistemskog okruženja. Da bi saznao ovaj direktorij, instalacijski program 1C:Enterprise traži korisnički kontekst USR1CV81. Da bi to uradio u Windows 2000, korisniku u čije ime je pokrenut instalacijski program 1C:Enterprise mogu biti potrebne sledeće privilegije: Delovati kao deo operativnog sistema i Zaobići proveravanje. Možete provjeriti korisničke privilegije koristeći uslužni program Lokalne postavke sigurnosti u grani Lokalne politike -> Dodjela korisničkih prava. Prilikom instaliranja novog softvera, instalater obično automatski dobija ove privilegije.

Registracija 1C:Enterprise servera kao Windows servisa


1C:Enterprise Server je jednostavna Windows konzolna aplikacija i može se pokrenuti interaktivno. Međutim, za stalnu upotrebu to je nezgodno, jer zahtijeva pokretanje servera 1C: Enterprise od prijave neaktivnog korisnika na serverski računar. Da bi se eliminisala ova zavisnost, server 1C:Enterprise može se pokrenuti kao Windows usluga. Da biste to učinili, mora biti registriran u Windows upravitelju usluga.

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

U dijalogu svojstava usluge "1C:Enterprise 8.1 Server Agent", na kartici Općenito, prikazana je linija za pokretanje ragent procesa, a to je 1C:Enterprise Server Agent. Obično ova linija izgleda ovako:


U njemu se navodi da:

* proces Server Agent je modul za pokretanje "C:\Program Files\1cv81\bin\ragent.exe";
* ragent proces se izvodi kao Windows usluga i njime mora upravljati upravitelj usluga (-srvc);
* koristi se kao 1C:Enterprise Server Agent (-agent);
* prilikom prvog pokretanja servisa mora se kreirati klaster sa zadanim parametrima i glavnim IP portom broj 1541 (-regport 1541). Koristeći ovaj port, klijentske aplikacije se moraju povezati na infobaze registrovane u klasteru;
* IP port agenta servera mora biti označen brojem 1540 (-port 1540). Koristeći ovaj port, Konzola klastera mora se povezati sa centralnim serverom za obavljanje administrativnih funkcija;
* kada se procesi klastera pokreću na ovom serveru, biće im dinamički dodeljeni IP portovi iz opsega 1560-1591 (-opseg 1560:1591).
* opšti podaci klastera će se nalaziti u direktorijumu "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 instaliranja ili deinstaliranja 1C:Enterprise pomoću instalacionog programa 1C:Enterprise 8.1, već i ručno. Da biste to učinili, možete pokrenuti uslužni program ragent iz komandne linije, navodeći odgovarajuće parametre.

Da biste kreirali servis, potrebno je da navedete parametar -instsrvc i sledeće parametre: -usr - ime korisnika pod čijim imenom servis treba da se pokrene, -pwd - lozinka ovog korisnika. U tom slučaju, preostali parametri postat će parametri linije za pokretanje 1C: Enterprise Server Agenta kao usluge. Na primjer, za standardnu ​​registraciju usluge 1C:Enterprise Server Agent u načinu za otklanjanje grešaka, skup parametara bi trebao biti sljedeći:

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

Da biste uklonili uslugu, morate navesti parametar -rmsrvc. Na primjer:
"C:\Program Files\1cv81\bin\ragent.exe" -rmsrvc

Ponekad je korisno promijeniti liniju pokretanja agenta servera ili druge parametre usluge agenta, na primjer, omogućiti način otklanjanja grešaka ili kreirati nekoliko servisa različitih verzija. Dijalog svojstava usluge ne dozvoljava vam da uredite liniju za pokretanje aplikacije usluge i neke druge parametre, na primjer, identifikator usluge. Za uređivanje, trebat će vam uslužni program regedit, dizajniran za pregled i uređivanje Windows sistemskog registra.

Pažnja!
Uređivanje Windows sistemskog registra zahtijeva izuzetan oprez, budući da pogrešne promjene u njemu mogu učiniti operativni sistem neoperativnim.

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


Među njegovim parametrima je parametar ImagePath, čija je vrijednost početni niz 1C:Enterprise Server Agenta. Ovdje možete dodati nove parametre niza pokretanja ili promijeniti vrijednosti postojećih. Kompletna lista mogućih parametara data je u dokumentaciji "1C:Enterprise 8.1 klijent-server".

Ako trebate registrirati nekoliko nezavisnih 1C:Enterprise Server Agent usluga, za njih morate odrediti različite module za pokretanje, različite portove i različite direktorije podataka klastera. Također ih morate registrirati s različitim identifikatorima usluga. Ovo se može uraditi ovako:

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

* Koristeći regedit uslužni program, 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
* Kreirajte drugu uslugu:
"C:\Program Files\1cv81_10\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -range 1660:1691 -d "C:\Program Files\1cv81_10\server"

* Možda bi i njegovu ličnu kartu trebalo promijeniti. Da biste to učinili: odaberite granu
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
i promijenite ime, na primjer u:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent Second

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

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

Da bi 1C:Enterprise server bio dostupan sa drugih računara u lokalnoj mreži, potrebno je da proverite mrežna podešavanja na serveru i klijentskim računarima, kao i za mrežu u celini. TCP/IP se koristi za prijenos podataka između klijentskih aplikacija i servera 1C:Enterprise, kao i između procesa klastera servera. Rad 1C:Enterprise u verziji klijent-server ovisi o njegovoj ispravnoj konfiguraciji.

Procesi klastera 1C:Enterprise servera se međusobno povezuju na adresama definisanim kao vrednosti svojstva „Računar“ u dijalogu svojstava radnih servera. Klaster zahtijeva da vrijednost svojstva Računalo bude ili IP adresa u tačkastom zapisu ili simbolička adresa iz koje se IP adresa može odrediti korištenjem funkcije gethostbyname definirane u TCP API-ju. IP adresa se određuje ili na osnovu lokalne tabele simboličkih adresa (C:\WINNT\system32\drivers\etc\hosts) ili na osnovu tabela adresa u dostupnim DNS serverima. Ako simbolička adresa radnog servera ne odredi njegovu IP adresu ili je netačno odredi (na primjer, IP adresa se ne poklapa sa stvarnom IP adresom ovog računala), tada klaster neće raditi. Važno je da imena računara i njihove adrese definisane u Windows-u na svakom od radnih servera u klasteru ne budu u suprotnosti sa njihovim imenima u DNS-u.

Na svakom radnom serveru, procesi klastera koriste sledeće portove: IP port radnog servera (obično 1540); IP portovi iz raspona IP portova toka posla (obično 1560-1591). Dodatno, centralni server klastera koristi port klastera (obično 1541). Ako sistem koristi zaštitne zidove, prijenos podataka na ovim portovima mora biti dozvoljen. Umjesto dopuštanja portova sa gornje liste, možete dozvoliti prijenos podataka u procese klastera (ragent, rmngr, rphost).

Veza između klijentske aplikacije 1C:Enterprise i servera izvodi se u 2 faze. Prvo uspostavlja vezu s upraviteljem klastera. Ovo koristi adresu centralnog servera (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 "Computer" odgovarajućeg radnog servera i porta radnog procesa, koji se bira iz niza IP portova radnog servera. Prijenos podataka na ove portove mora biti dozvoljen u svim zaštitnim zidovima duž rute od računara klijentske aplikacije do računara klastera servera 1C:Enterprise. IP adresa serverskih procesa se određuje pomoću funkcije gethostbyname na klijentskom računaru. Važno je da imena centralnog i radnog servera i njihove adrese definisane u Windows-u na svakom od servera u klasteru ne budu u suprotnosti sa njihovim imenima u DNS-u koji je dostupan klijentskom računaru.

I još jedna stvar. Očigledno, da biste uspješno pristupili serveru 1C: Enterprise sa drugih računara, on mora biti na mreži i moraju se izvršiti potrebna podešavanja za to. Povezivanje na mrežu i načini podešavanja odnose se na administraciju mreža zasnovanih na Microsoft Windows-u i opisani su u odgovarajućim uputstvima.

Karakteristike postavljanja SQL servera

1C:Enterprise u verziji „klijent-server” koristi SQL server za skladištenje podataka. U ovom slučaju, samo 1C:Enterprise Server pristupa SQL serveru. 1C:Enterprise klijenti nemaju direktan pristup SQL serveru. Instaliranje i konfigurisanje SQL servera detaljno je opisano u dokumentaciji Microsoft SQL Servera. Za uspješan rad 1C:Enterprise Servera sa SQL serverom potrebno je obratiti posebnu pažnju na sljedeće postavke.

* Potrebne komponente SQL servera. Da biste pristupili SQL serveru sa strane 1C:Enterprise Servera, na računar 1C:Enterprise Server moraju biti instalirane komponente Microsoft Data Access 2.6 ili novije verzije.
* Autentifikacija korisnika pomoću SQL servera. Prava pristupa bazama podataka SQL servera određuje korisnik u čije ime se pristupa bazama podataka. Sa računara na kojem je instaliran SQL server, pokrenite uslužni program SQL Server Enterprise Manager, pronađite lokalni čvor (Korijen konzole -> Microsoft SQL Serveri -> SQL Server Group -> (Lokalno)) i otvorite njegova svojstva. Na kartici Sigurnost možete vidjeti da SQL server podržava dvije metode provjere autentičnosti korisnika: SQL Server i samo Windows i Windows. Windows autentifikacija će omogućiti 1C:Enterprise Serveru pristup SQL serveru samo u ime korisnika USR1CV81, što ne dozvoljava razlikovanje prava pristupa različitim bazama podataka koje opslužuje jedan 1C:Enterprise server. Preporučljivo je odabrati SQL Server i Windows način rada. U tom slučaju pristup određenoj infobazi će se izvrš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 na SQL serveru i čitanje tabela Master baze podataka.
* Mrežni protokoli za pristup SQL serveru. Ako se 1C:Enterprise Server i SQL server nalaze na različitim računarima, potrebno je da konfigurišete protokole za pristup mreži za SQL server. Ovo se može učiniti pomoću SQL Server Client Network Utility. Na kartici Općenito možete odabrati listu mrežnih protokola koji se koriste za pristup SQL serveru. Najbrži i najsvestraniji je korištenje TCP/IP protokola. Kada koristite druge protokole, morate imati na umu da neki od njih, na primjer Named Pipes, vrše dodatnu autentifikaciju pomoću Windows alata prilikom razmjene podataka sa SQL serverom. U tom slučaju, za uspješan rad sa SQL serverom, korisnik USR1CV81 mora biti registriran na računalu sa SQL serverom, sa odgovarajućim pravima. Pristupni protokol za ovaj SQL server može se promijeniti na kartici Alias.

Pored članka

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

Ovaj članak je napisan da pomogne i tim i drugim stručnjacima, osmišljen da uštedi vaše vrijeme i skrene vašu pažnju na najvažnije detalje kada koristite ove softverske proizvode zajedno.

Da bi informacije bile lakše razumljive, date su studije slučaja, bilješke i savjeti (kurzivom).

Trolink kolo

Kao što čitalac možda već zna, baza podataka u predmetu koji se razmatra ima troslojnu arhitekturu:

Link 1: MS SQL Server DBMS. “Skladišti” i održava bazu podataka, u konačnici izvodeći sve vrste operacija baze podataka. Dakle, performanse baze podataka, brzina i paralelizam čitanja i pisanja podataka u velikoj mjeri su određeni performansama MS SQL Servera.

Veza 2: Server "1C: Enterprise 8". Služi kao posrednik u interakciji između klijenata (korisnika) i MS SQL Servera. Svi zahtjevi klijenta šalju se serveru, koji ih „prevodi“ u jezik upita MS SQL Server, prima rezultate izvršenja ovih upita i šalje rezultate klijentu.

Postoji samo mali dio operacija koje se izvode na nivou servera 1C: Enterprise 8, bez pristupa MS SQL-u - to je, posebno, praćenje takozvanih „upravljanih brava“, čitanje i pisanje „parametara sesije“. U takvim slučajevima pristup DBMS-u nije potreban, jer se te operacije ne izvode s podacima baze podataka, već s pomoćnim informacijama servera.

Link 3: Klijentski dio "1C: Enterprise 8". Pristupa 1C: Enterprise 8 serveru, prima rezultate od njega (tj., na primjer, uzorke podataka) i odgovoran je za korisničko sučelje.

"Želio sam najbolje."

Nakon ponovne instalacije servera 1C: Enterprise 8, korisnici se žale na oštar pad performansi. Specijalista za implementaciju softvera 1C: Enterprise koji je izvršio reinstalaciju samo je iznenađen - kažu da je želeo najbolje, sistem je trebao brže da radi... Analiza situacije pokazala je da je serveru 1C: Enterprise 8 dodeljeno previše resursa : obrađuje (vidi tačku 3) rphost je zauzeo 15,5 GB od 16 GB RAM-a servera, kao rezultat toga, praktično nije bilo dostupnog RAM-a za kompatibilni MS SQL Server.

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

Kompatibilnost proizvoda

Aktuelne informacije o verzijama MS SQL Servera preporučenim za upotrebu u kombinaciji sa 1C: Enterprise 8 možete pronaći na ovom linku http://v8.1c.ru/requirements/.

U vrijeme pisanja ovog članka, 1C programeri 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, za to je potrebna instalacija servisnog paketa 2 (SP2), a poželjna je instalacija servisnog paketa 4 (SP4).

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

Bilješka:

Potrebno je obratiti pažnju na postavke operativnog sistema: na primjer, za efikasan rad M SQL Server 2008 pod OS Server 2008R2, potrebno je da onemogućite balansirani režim napajanja i pređete na režim maksimalnih performansi.

Instaliranje klijent-server verzije "1C: Enterprise 8"

"1C instaliran"

Za jednog od kupaca, instalaciju 1C: Enterprise 8 izvršio je administrator sistema koji nije imao iskustva u radu sa 1C: Enterprise 8. I iako je, prema njegovim riječima, “instalirao 1C”, na korisničkim računarima nije bilo klijentskog dijela, a na serveru nije bilo ni serverskog dijela. Analiza situacije razjasnila je sliku - 1C: Enterprise 8 komplet uključivao je 2 diska - instalaciju platforme i instalaciju predložaka baze podataka. Administrator se nije upuštao u proceduru instalacije - već je instalirao šablone baze podataka, a ne izvršne datoteke, komponente platforme.

Naravno, ovo je netipičan primjer izuzetno nepažljivog odnosa prema poslu.

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

      Platforma 1C: Enterprise 8 je izvršna aplikacija, integrisano okruženje za razvoj i rad baza podataka. Kada ga pokrenete, birate jedan od dva načina rada - “Enterprise” (ljuska korisničke baze podataka) ili “Configurator” (integrirano razvojno okruženje). Kompletniji opis možete pročitati na linku
      Predlošci konfiguracije "1C: Enterprise" su fajl internog formata platforme, uz pomoć kojeg platforma može kreirati č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 instaliranja platforme obratite pažnju na odabir komponenti:





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

U ovom slučaju, server će klijentskim računarima omogućiti pristup bazama podataka 1C: Enterprise, ali rad s bazom podataka u korisničkom modu direktno sa servera neće biti moguć.

Bilješka:

64-bitna verzija platforme ne sadrži klijentski dio. Stoga, kada se instalirate na server, 64-bitne serverske komponente se instaliraju zasebno, a 32-bitne komponente klijentske aplikacije se instaliraju zasebno.

Komponenta "1C Server: Enterprise" potrebna je za povezivanje na MS SQL Server - to je server aplikacija, povezujuća veza između platforme na radnim stanicama klijenta i MS SQL Servera.

Komponentu je moguće instalirati u režimu 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 pokreće nekoliko procesa, kao što su: “server agent”, “server cluster manager”, “server worker processs”.

Upite bazi podataka izvršavaju radni procesi, a upravitelj klastera servera raspoređuje opterećenje između njih.

Radnim procesima servera može se upravljati (dodati, obrisati, postaviti ograničenja upotrebe RAM-a, proglasiti primarnim ili rezervnim) ako je instalirana komponenta 1C: Enterprise Server Administration.



Bilješka:

Za 32-bitnu verziju servera preporučuje se instaliranje radnih procesa u tolikom broju da ne ostane RAM neiskorišten - svaki od njih ima primjetno ograničenje u korištenju RAM-a, od 2 do 4 GB u zavisnosti od sistema konfiguraciju.

Za 64-bitnu verziju servera, teoretski su dovoljna dva radna procesa - jedan radni i jedan backup. Međutim, u praksi, da bi se osigurala pouzdanost i stabilnost veza za značajan (nekoliko stotina) korisnika, potreban je veći broj, zavisi od mnogo faktora – od broja korisnika, sadržaja baze podataka i obima korisnika. obavljeni upiti, pa autori smatraju da broj procesa u ovom slučaju treba odabrati eksperimentalno.

"Ouroboros"

Nakon neuspešne optimizacije podešavanja servera 1C: Enterprise 8, korisnici su prijavili izuzetno spor rad sistema, a sistemski administrator je primetio konstantno 100% opterećenje procesora na serveru.

Analiza situacije pokazala je izvor problema – prilikom konfiguracije postavljeno je premalo ograničenje upotrebe RAM-a od strane radnih procesa.

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

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

Ograničenje je bilo toliko malo (300MB) da radni proces nije mogao u potpunosti servisirati čak ni jednog intenzivnog korisnika - kao rezultat toga, upravitelj klastera servera je stalno restartovao radne procese i ponovo povezivao korisnike. Čim je kreiran novi proces i korisnici su se povezali s njim, ograničenje RAM-a je gotovo trenutno bilo dostignuto i izazvalo sljedeće ponovno pokretanje. Ovo je zauzelo 100% opterećenja procesora.

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

Ako je broj povezanih korisnika mali (manji od 50), server aplikacija se obično instalira na istom računaru na kojem je pokrenut MS SQL Server.

Za sisteme sa velikim brojem korisnika i/ili velikim obimom protoka informacija preporučuje se odvojena instalacija, kao i upotreba serverskog klastera.

Komponenta "1C: Enterprise Server Administration" takođe može biti korisna za klijente - na primer, uz njenu pomoć možete videti listu baza podataka povezanih sa datim serverom "1C: Enterprise".

Toplo se preporučuje da ga instalirate na samom serveru.

Pristup

Bilješka:

Da biste provjerili da li je pristup omogućen, nije dovoljno koristiti uslužni program za administraciju 1C: Enterprise servera, a još više, prisustvo servera u „mrežnom susjedstvu“ nije dovoljno!

Potrebno je da se svaki klijent prijavi u bazu podataka instaliranu na serveru - samo će to dati 100% sigurnost da je pristup omogućen.

1. Ovisno o sigurnosnim politikama, MS SQL Server koristi autentifikaciju Windows naloga ili autentifikaciju MS SQL Server naloga.




U drugom slučaju, prilikom kreiranja baze podataka 1C: Enterprise, sistem će zatražiti prijavu i lozinku MS SQL Server naloga (na primjer, sa), u prvom slučaju prijavu i lozinku treba ostaviti prazne:



a korisnik sistema u čije ime radi 1C: Enterprise server mora imati prava u MS SQL Serveru, i to:

      puna prava na bazu podataka u kojoj se nalazi baza podataka
      pristup glavnoj bazi podataka (javna uloga)
      preporučeno - prava za kreiranje baze podataka, inače će svaka nova baza podataka prvo morati biti kreirana pomoću MS SQL Severa, a tek onda povezana na 1C: Enterprise server
      preporučeno - pravo na brisanje baze podataka



Na primjer, možete dodijeliti dotičnom korisniku 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. Server 1C: Enterprise pristupa MS SQL Serveru preko mehanizma Microsoft Data Access, tako da njegove komponente moraju biti instalirane, a korisnik servera 1C: Enterprise (vidi prethodni pasus) mora imati prava za njihovo pokretanje.

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

Savjet.

Ako je mreža peer-to-peer, da biste osigurali trajnu vezu sa serverom, kreirajte mrežni disk koji pristupa bilo kojoj od fascikli ovog servera.

4. Ako se koristi protokol Named Pipes i ako su MS SQL Server i 1C: Enterprise server instalirani na različitim računarima, korisnik u čije ime radi 1C: Enterprise server mora biti registrovan na listi korisnika računara na kojem je pokrenut MS SQL Server.

5. U nekim slučajevima može biti potrebna dodatna konfiguracija Windows zaštitnog zida, odnosno dodavanje izuzetaka.

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

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

"blizanci"

"Jedan od korisnika je koristio dva servera baze podataka, od kojih je svaki imao po jednu radnu bazu podataka. Korisnici su radili - svaki istovremeno sa obje baze podataka. Služba podrške je ažurirala 1C: Enterprise 8 platformu na serverima i klijentima.... A onda su počele pljuštati žalbe u nemogućnosti povezivanja na jednu ili drugu bazu podataka Analiza situacije je pokazala da je nekoliko ljudi radilo ažuriranje na klijentima i serverima, a stručnjaci za instalaciju nisu dvaput provjerili da li instaliraju isto izdanje izdanje platforme na drugom - drugom, na polovini klijenata - prvom od ovih izdanja, na drugoj polovini - ispostavilo se da svaki korisnik ima pristup samo jednoj od baza podataka.

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

Početna podešavanja MS SQL Servera i baze podataka

“I to tako funkcionira”

MS SQL Server se odlikuje jednostavnom početnom instalacijom, tako da se svi administratori ne zamaraju dodatnom konfiguracijom - nakon izvršene zadane instalacije baza podataka radi, korisnici su prijavljeni - posao je gotov. Ovakav pristup gotovo uvijek dovodi do problema koji nastaju nakon mjesec-dva - i to, naravno, iznenada iu najnepovoljnijem trenutku.

Na primjer, ako je baza podataka namijenjena za računovodstvene svrhe, prije podnošenja poreskih izvještaja često postoji potreba za hitnim preračunavanjem određenih podataka, te masovnim preračunavanjem, recimo, „svih primitaka osnovnih sredstava od početka godine“. Štaviše, tokom radnog dana, bez prekida rada ostalih korisnika baze podataka.

I, naravno, u ovom trenutku će se otkriti da se prilikom takvog preračunavanja baza podataka „zamrzne“, ili „ruši“, ili ne dozvoljava drugim korisnicima da rade.

Ova vrsta "Murphyjevog zakona" primjenjuje se na svaku od sljedećih tačaka.

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

1. Postavite vrijednost parametra maksimalnog stepena paralelizma na 1.

To je:

      Nakon povezivanja na server, uđite u svojstva servera kroz kontekstni meni, stavka Svojstva
      zatim odaberite stranicu Napredno i uredite parametar maksimalnog stepena paralelizma






U suprotnom, neki upiti koje generira 1C: Enterprise server mogu uzrokovati grešku "Paralelizam unutar upita doveo je do zastoja naredbe vašeg servera (ID procesa #XX). Ponovo pokrenite upit bez paralelizma unutar upita koristeći opciju savjeta za upit (maxdop 1 )". Nakon ove greške, klijentski dio se često ruši.

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

2. Kreirajte Plan održavanja koji svake noći smanjuje bazu podataka privremene tablice tempdb. 1C: Enterprise server ne briše uvijek bazu podataka privremenih tabela automatski, a ponekad, kao rezultat neuspješno napisanog upita, može se kreirati i neobrisati privremena tablica veličine, na primjer, 50 GB. Kao rezultat, može ponestati prostora na disku, zbog čega se i klijentski i serverski dijelovi mogu srušiti, a postoji i mali rizik od narušavanja integriteta podataka.

Odnosno, potrebno vam je:

      idite na MS SQL Management Studio
      nakon povezivanja na server, proširite odjeljak "Planovi održavanja".
      kreirajte novi (ili dodajte postojeći) plan usluga,
      dodajte mu stavku "Izvrši zadatak T-SQL izjave" (pošto ne možete odabrati tempdb bazu podataka u zadatku "Smanji bazu podataka") sa kodom




1.USE
2.
3.GO
4.
5.DBCC SHRINKFILE (N"tempdev" , 0, SAMO SKRIVANJE)
6.
7.GO
8.
9.DBCC SHRINKFILE (N"templog" , 0, SAMO SKRIVANJE)
10.
11.GO

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

1.USE tempdb
2.
3.GO
4.
5.EXEC sp_helpfile
6.
7.GO




“Lonac, ne kuvaj”

Najčešći način u praksi da se prepuni tempdb i time sruši server je da se zaboravi navesti uslov prilikom spajanja tabela.

Naime, recimo da imamo dvije tabele u bazi podataka, svaka sa po 20 hiljada zapisa. Recimo da postoji korespondencija jedan-na-jedan između njihovih zapisa, i napišemo upit koji kreira privremenu tabelu koja sadrži 20 hiljada zapisa sa poljima iz obe izvorne tabele. Ali ako zaboravimo da navedemo uslov spajanja, svaki zapis prve tabele će biti spojen sa svakim zapisom druge! To jest, rezultujuća tabela će se sastojati od 20.000 * 20.000 = 400 miliona zapisa. I tako dalje.

3. Kako bi se smanjilo opterećenje diskovnog podsistema, preporučuje se, ako je moguće, distribuirati radnu bazu podataka i tempdb, dnevnike i sistemsku swap datoteku na različite fizičke diskove.

Bolje je postaviti željenu putanju za pohranjivanje datoteka radne baze podataka kada je kreirate uređivanjem kolone Putanja:




Da biste promijenili fizičku lokaciju privremenih datoteka baze podataka tablice, koristite naredbu ALTER DATABASE, odnosno u MS SQL Management Studio morate pokrenuti sljedeću skriptu (naredba "Novi upit")

1.USE master
2.
3.GO
4.
5.ALTER DATABASE tempdb
6.
7. IZMJENI DATOTEKU (NAME = tempdev, FILENAME = "Novi_Disk:\Novi_direktorij\tempdb.mdf")
8.
9.GO
10.
11.ALTER DATABASE tempdb

12.
13. IZMJENI DATOTEKU (NAME = templog, FILENAME = "Novi_Disk:\Novi_direktorij\templog.ldf")
14.
15.GO

4. Ne treba ometati “rast” radne baze podataka i njenog dnevnika – ne bi trebalo postojati ograničenje veličine, svojstvo “Autogrowth” treba postaviti u procentima, preporučena vrijednost je 10%. U suprotnom, dodavanje podataka u bazu podataka, vraćanje iz arhive i druge operacije mogu potrajati nerazumno dugo.

Da biste postavili ovo svojstvo, morate preko kontekstnog menija otići na svojstva baze podataka, odabrati odjeljak Datoteke i otvoriti svojstva datoteke za uređivanje:



5. Preporučljivo je omogućiti podršku za TCP/IP mrežni protokol u MS SQL Serveru i onemogućiti sve ostale, inače će zajednički rad MS SQL Servera i 1C: Enterprise servera biti manje stabilan.




6. Na istom mjestu - obrišite odjeljak Alias, jer njegova instalacija dovodi do grešaka u interakciji između MS SQL Servera i 1C: Enterprise servera.

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

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

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



2. Postavite model oporavka na Jednostavan ili kreirajte Plan održavanja, koji će kreirati dnevnu sigurnosnu kopiju baze podataka i smanjiti dnevnik transakcija (log fajl). Inače, tokom nekih operacija dnevnik transakcija (log fajl) će rasti vrlo brzo: na primjer, prilikom restrukturiranja baze podataka, rast 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 sedmično:

      Kreiranje sigurnosne kopije baze podataka.
      Ažurirajte statistiku baze podataka i obrišite proceduralni keš (imajte na umu da svojstvo statistike automatskog ažuriranja ne podrazumijeva brisanje proceduralne keš memorije).
      Brisanje proceduralnog keša nije uključeno u standardne operacije Planova održavanja ovaj korak mora biti definisan kao izvršavanje skripte (Izvrši T-SQL izjavu) sa sledećim sadržajem:
      DBCC FREEPROCCACHE
      Ponovno indeksiranje tablica baze podataka.






Naravno, ima smisla postaviti automatsko slanje mejlova o uspješnom/neuspješnom završetku zadataka.




Zaključak

Pitanja koja najčešće uzrokuju poteškoće sistemskim administratorima i implementatorima 1C: Enterprise 8 razmatraju se u vezi sa zajedničkim korištenjem MS SQL Servera i klijent-server verzije 1C: Enterprise 8.

Autor se nada da je pokrio „obe strane medalje“ na prilično dosledan i pristupačan način.

P.S. Često pravite rezervne kopije!

Klijent-server verzija rada- jedna od opcija za rad sa sistemom 1C:Enterprise 8.

Klijent-server verzija posla je namenjena za upotrebu u radnim grupama ili na nivou preduzeća. Implementiran je na bazi troslojne klijent-server arhitekture.

Arhitektura klijent-server dijeli cijeli radni sistem na tri različita dijela koji međusobno djeluju na određeni način:

Program koji se pokreće za korisnika (klijentska aplikacija) komunicira sa klasterom servera 1C:Enterprise 8, a klaster, ako je potrebno, pristupa serveru baze podataka.

U ovom slučaju, fizički klaster 1C:Enterprise 8 servera i server baze podataka mogu se nalaziti ili na istom računaru ili na različitim. Ovo omogućava administratoru da rasporedi opterećenje između servera ako je potrebno.

Korišćenje klastera servera 1C:Enterprise 8 omogućava vam da koncentrišete najopsežnije operacije obrade podataka na njega. Na primjer, prilikom izvršavanja čak i vrlo složenih upita, program koji radi za korisnika će dobiti samo ono što mu je potrebno, a sva posredna obrada će se izvršiti na serveru. Obično je povećanje kapaciteta klastera servera mnogo lakše od nadogradnje čitave flote klijentskih mašina.

Još jedan važan aspekt upotrebe troslojne arhitekture je jednostavnost administracije i pojednostavljenje pristupa korisnika bazi podataka. U ovoj opciji, korisnik ne mora biti svjestan fizičke lokacije konfiguracije ili baze podataka. Sav pristup se obavlja preko klastera 1C:Enterprise 8 servera Prilikom pristupa određenoj infobazi, korisnik mora navesti samo naziv klastera i naziv infobaze, a sistem traži korisničko ime i lozinku.

1C:Enterprise 8 koristi mogućnosti sistema za upravljanje bazom podataka za efikasno preuzimanje informacija:

  • mehanizam upita je fokusiran na maksimiziranje upotrebe DBMS-a za izvođenje proračuna i generiranje izvještaja,
  • pregled velikih dinamičkih lista je osiguran bez obavljanja velikog broja poziva baze podataka; Istovremeno, korisniku se pružaju efikasne mogućnosti pretraživanja, kao i podešavanja odabira i sortiranja.

Postavljanje opcije klijent-server i njeno administriranje je prilično jednostavno. Na primjer, kreiranje baze podataka se vrši direktno tokom pokretanja konfiguratora (isto kao i za verziju datoteke).

Klijentske aplikacije

Rad u verziji klijent-server moguć je direktno sa klasterom ili preko web servera. Štaviše, u slučaju direktne veze sa klasterom, debeli klijent i tanki klijent koriste TCP/IP protokol. Kada se povezuju preko web servera, tanki klijent i web klijent koriste HTTP ili HTTPS protokol.

Klaster servera

Klaster servera 1C:Enterprise 8 je glavna komponenta platforme, koja osigurava interakciju između korisnika i sistema upravljanja bazom podataka u klijent-server modu. Prisustvo klastera omogućava vam da osigurate neprekidan, otporan na greške, konkurentan rad velikog broja korisnika sa velikim bazama podataka.

Server baze podataka

Sljedeće se može koristiti kao server baze podataka:

Administracija klastera servera

Platforma uključuje skup različitih alata koji omogućavaju administratoru da upravlja sastavom klastera, bazama podataka i korisničkim vezama.

Obavljanje osnovne funkcionalnosti na serveru

Sav rad sa objektima aplikacije, čitanje i pisanje baze podataka obavlja se samo na serveru. Funkcionalnost formi i komandnog interfejsa je takođe implementirana na serveru.

Server priprema podatke obrasca, raspoređuje elemente i bilježi podatke obrasca nakon promjena. Klijent prikazuje već pripremljenu formu na serveru, unosi podatke i poziva server da zabilježi unesene podatke i druge potrebne radnje.

Slično, komandni interfejs se formira na serveru i prikazuje na klijentu. Takođe, izveštaji se u potpunosti generišu na serveru i prikazuju na klijentu.

Istovremeno, mehanizmi platforme su fokusirani na minimiziranje količine podataka koji se prenose na računar klijenta. Na primjer, podaci iz lista, tabelarnih sekcija i izvještaja se ne prenose sa servera odmah, već kako ih korisnik pregleda.

Server radi:

  • Upiti baze podataka
  • snimanje podataka,
  • Izrada dokumenata,
  • Razne kalkulacije
  • Izvođenje obrade,
  • generisanje izveštaja,
  • Priprema obrazaca za prikaz.

Radi na klijentu:

  • Prijem i otvaranje formulara,
  • Prikaz obrasca,
  • “Komunikacija” sa korisnikom (upozorenja, pitanja...),
  • Mala kalkulacija u obrascima koji zahtijevaju brz odgovor (na primjer, množenje cijene sa količinom),
  • Rad sa lokalnim fajlovima
  • Rad sa komercijalnom opremom.

Korištenje ugrađenog jezika na klijentu

Funkcionalnošću obrazaca možete upravljati ne samo na serveru, već i na klijentu. Klijent podržava ugrađeni jezik. Koristi se u slučajevima kada je potrebno izvršiti kalkulacije vezane za formu prikazanu na ekranu, na primjer, da se brzo (bez kontaktiranja servera) izračuna količina reda dokumenta na osnovu cijene i količine; postaviti pitanje korisniku i obraditi odgovor; pročitajte datoteku iz sistema datoteka računara i pošaljite je na server.

Međutim, rad ugrađenog jezika na klijentu je podržan u strogo ograničenoj mjeri. Klijentske procedure u modulima su eksplicitno odvojene od serverskih procedura i koriste ograničenu kompoziciju objektnog modela ugrađenog jezika.

Klijentu nije dozvoljen direktan rad sa bazom podataka. Direktan rad sa objektima aplikacije nije dozvoljen, na primer, takve vrste ugrađenih jezika kao što su; DirectoryObject.<имя> . Zahtjevi nisu dozvoljeni. Ako trebate pozvati akcije s podacima u kodu klijenta, trebate pozvati serverske procedure koje će već pristupiti podacima.

Beta meni

Podešavanje servera 1C:Enterprise 8.3 i PostgreSQL 9.4.2-1.1C. Kompletna uputstva

U ovom priručniku ćemo reći (i pokazati) kako postaviti vezu 1C:Preduzeće 8.3 I PostgreSQL 9.4.2 od trenutka instaliranja oba servisa, pa sve do kreiranja baze podataka. Možete pročitati o podešavanju ove kombinacije.

Faze kroz koje moramo proći:

  1. Instalacija Serveri 1C: Enterprise(64-bitni) za Windows
  2. Instalacija PostgreSQL 9.4.2-1.1C
  3. Kreiranje baze podataka.

Više detalja ispod reza!

Faza 0. Ulazni podaci.

Ime servera - 1CServer
Ime serverskog naloga - Administrator
Lozinka računa - 123456Ab

Naziv 1C naloga na serveru - USR1CV8
Lozinka 1C naloga na serveru - 123456Cd

Ime PostgreSQL naloga na serveru je postgres
Lozinka za PostgreSQL nalog na serveru je 123456Ef

PostgreSQL ime superkorisnika - postgres
PostgreSQL lozinka superkorisnika - 1234

Naziv baze podataka testa − testdb

Faza 1. Instalacija Serveri 1C: Enterprise(64-bitni) za Windows


Faza 2. Instalirajte PostgreSQL i pgAdmin.


Faza 3. Kreiranje baze podataka 1C.

  1. Prije izvođenja sljedećih operacija, onemogućite IPv6 na vašem mrežnom sučelju: Centar za mrežu i dijeljenje > LAN veza > Svojstva> Opozovite izbor Internet protokol verzija 6 (TCP/IPv6).
  2. Pokrećemo klijent 1C:Enterprise i dodajemo novu bazu podataka.
  3. Kreiranje nove infobaze > Kreiranje infobaze bez konfiguracije (na primjer, možete imati bilo koju konfiguraciju) > Na serveru 1C:Enterprise >
  4. Popunjavamo sva polja u skladu sa našim primjerom (faza 0):
    Klaster servera 1C:Enterprise: 1CServer
    Naziv infobaze u klasteru: testbd
    Sigurna veza: Ugašeno
    DBMS tip: PostgreSQL
    Server baze podataka: 1CServer
    Naziv baze podataka: testbd
    Korisnik baze podataka: postgres
    Korisnička lozinka: 1234
  5. Dalje, dalje. Pokrećemo kreiranu bazu podataka u poslovnom modu - sve radi!

Još jednom vas podsećamo da se PostgreSQL može prilično dobro overklokovati. Detalji u.
I ne zaboravite na 1C!
Ako ima problema sa bazom podataka, možda će vam ovo pomoći.
1C baze podataka su moguće!

Imate još pitanja?

Nešto je pošlo po zlu? Stručnjaci naše kompanije pomoći će vam da riješite sve probleme koji se mogu pojaviti! Kontaktiraj nas! →

Ljudi stalno pitaju na forumima na internetu:
-Kako instalirati 1C:Enterprise 8.1 (8.2) na PostgreSQL na Windows operativnom sistemu
-Da li je moguće istovremeno instalirati dva procesa “1C:Enterprise Server Agent 8.1” i “1C:Enterprise Server Server Agent 8.2”. Ako da, kako to učiniti?
-Nakon instaliranja 1C i PostgreSQL-a prikazuju se sljedeće greške:
A)



b) Greška prilikom kreiranja infobaze:
Došlo je do greške prilikom izvođenja operacije s info bazom.

c) Greška prilikom kreiranja infobaze:
Došlo je do greške prilikom izvođenja operacije s info bazom.


Ako ste suočeni s takvim problemima i tražite odgovor, onda je ovaj članak upravo za vas.

1. Instalacija 1C:Enterprise 8.2

Početak instalacije 1C:Enterprise 8.2.

Odabirom komponenti za ugradnju osim toga, trebat će nam:
-Server 1C:Enterprise
- Administracija servera 1C: Enterprise

Odabir ruskog jezika

Zatim morate kreirati korisnika u čije ime će se pokrenuti servis Server Agent. Dakle, označite polje da biste instalirali 1C server: Enterprise kao Windows uslugu (preporučeno). I kreiramo korisnika. Čak i ako navedete postojeću i slučajno postavite pogrešnu lozinku, usluga se jednostavno neće pokrenuti nakon instalacije. I sama instalacija će se završiti ispravno, potrebno je da kliknete na nastavak u prozoru za pokretanje usluge.

Započnimo instalaciju

Instaliranje sigurnosnog drajvera: Sigurnosni drajver mora biti instaliran na računar u koji je umetnut fizički ključ. Najčešće je ključ instaliran na serveru, mi ćemo učiniti isto i ostaviti zadani okvir za instalaciju drajvera - install.

Završavamo instalaciju.

Pronađite "1C: Enterprise Server Agent", idite na svojstva:

A na kartici "prijava" promijenite tip prijave na "sa sistemskim računom".

2. Instaliranje PostgreSQL-a za 1C:Enterprise.

Pokrećemo instalaciju PostgreSQL-a. Sam distributivni komplet mora se preuzeti sa službene web stranice 1C, jer već postoji verzija konfigurirana za rad sa 1C.

Pokrećemo instalaciju, biramo ruski jezik i kliknemo dalje.

Izbor komponenti za instalaciju je ostavljen kao zadani.

Inicijalizacija klastera.

Ako je potrebno da se agent servera dijeli sa SQL serverom, potvrdite okvir za podršku konekcija sa bilo koje IP adrese, ne samo lokalnog hosta.
PAŽNJA! Postavili smo kodiranje: UTF-8 i za server i za klijenta.

Ovdje sve ostavljamo kao zadano i ponovo kliknemo dalje.

Dodatni moduli se mogu ostaviti po defaultu, ako je potrebno, možete označiti potrebne.

Pokretanje instalacije PostgreSQL-a

Završavamo instalaciju.

Za PostgreSQL uslugu takođe obično menjam tip pokretanja - sa sistemskim nalogom.

3. Kreiranje baze podataka na pgsql serveru i uobičajene greške koje se javljaju u ovoj fazi.

Idemo na 1C, dodamo novu bazu podataka, kažemo da će baza biti na serveru i naznačimo parametre servera:

Pažnja. Baza podataka mora biti kreirana posebno iz 1C, inače ako je kreirate iz PgMyAdmin, tada ćete kada pokušate ući u bazu podataka dobiti greške:

Greška prilikom kreiranja infobaze:
Došlo je do greške prilikom izvođenja operacije s info bazom.
DBMS greška: GREŠKA: jezik "plpgsql" ne postoji.
SAVJET: koristite CREATE LANGUAGE za učitavanje jezika u bazu podataka.

Čak i ako odete na pgMyAdmin i dodate jezik "plpgsql" za bazu podataka, pojavit će se sljedeća greška.

Greška prilikom kreiranja infobaze:
Došlo je do greške prilikom izvođenja operacije s info bazom.
DBMS greška: GREŠKA: tip "mvarchar" ne postoji na znaku 31

RJEŠENJE: Potrebno je kreirati bazu podataka iz 1C.

Ako ste prilikom kreiranja baze podataka iz 1C: Enterprise dobili sljedeću poruku:

Došlo je do greške prilikom izvođenja operacije s info bazom.
DBMS greška: GREŠKA: novo kodiranje (UTF8) nije kompatibilno sa kodiranjem baze podataka šablona (WIN1251).
SAVJET: Koristite isto kodiranje kao u bazi podataka šablona ili koristite template0 kao predložak.

REŠENJE: Prilikom instaliranja PostgreSQL-a, ostavili ste Windows-1251 jezik za server ili klijenta, koji je podrazumevano instaliran, ali ste morali da ga promenite u UTF-8

Ponovo instalirajte PostgreSQL i navedite UTF-8 jezik tokom instalacije.

4. Pokretanje agenta servera 1C:Enterprise 8.1 i

1C:Enterprise 8.2 server agent istovremeno na jednom računaru.

Sa pojavom 8.2 platforme, mnogi ljudi su počeli da imaju problem kada im je bila potrebna 8.2 platforma za rad na serveru, ali bi u isto vreme želeli da zadrže 8.1.

Predlažem jedan način za instaliranje dva serverska agenta, kroz podjelu portova.

Prvo, instalirajte Platformu 8.1, kao što je gore opisano. Zatim instalirajte Platformu 8.2. Sada bismo trebali imati 2 servis agenta koji se pojavljuju na listi usluga. Ali kada pokrenete drugu uslugu, prikazat će se sljedeća poruka:

Usluga "1C: Enterprise 8 Server Agent" na "lokalnom računaru" je pokrenuta, a zatim zaustavljena. Neke usluge se automatski zaustavljaju ako ih ne koriste drugi servisi ili programi.

Ovo se dešava zbog činjenice da sistem pokušava da pokrene 2 radna procesa istovremeno koji rade na istom portu.

Da bismo izašli iz ove situacije, promijenimo port, na primjer, Server Agent 8.1.
Da biste to učinili, morate zaustaviti uslugu 1C:Enterprise 8.2 Server Agent.
Pokrenite 1C: Enterprise Server Agent 8.1.

Grana registra: HKLM\SYSTEM\ControlSet001\services\1C:Enterprise 8.1 Server Agent
Parmert: ImagePath
Vrijednost: "C:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -opseg 1660:1691 -d "C:\Program Files\1cv81\server"

Nakon ove promjene, trebali bismo imati 2 1C Server Agenta koji rade istovremeno: Enterprise 8. Pokrećemo ih u skladu s tim.

Sada moramo dodati novi klaster servera. Sve radimo u ispravnom stanju:

Ako nemamo centralni 8.1 server, dodajte ga, ali sa portom 1640:

Dodajte klaster servera, promijenite port na 1641:

Sada će naš 8.1 klaster raditi preko porta 1640, a za 8.2 preko 1540 (podrazumevani port):

Dodavanje toka posla 8.1. portovi se prema tome također mijenjaju na 16xx

Pokrećemo proces, ne zaboravite označiti okvir - proces je omogućen.

Sada bi sve trebalo da funkcioniše za nas.

Posljednja stvar koju treba reći: kada kreirate bazu podataka na 8.1, morate navesti port, jer u suprotnom će se koristiti podrazumevani port (1541) i program će pisati o nekompatibilnosti verzije platforme.