Instalace serveru na 1s.

Téma instalace MS SQL Serveru je obvykle ignorováno. Ve skutečnosti je obtížné neinstalovat tento DBMS, i když to děláte poprvé, a stejně tak je obtížné nespustit 1C:Enterprise Server ve spojení s ním. Existuje však řada nezřejmých jemností, které mohou výrazně otrávit život správce, o kterých si dnes povíme.

MS SQL Server je na prvním místě v počtu implementací ve spojení s 1C:Enterprise, je to z velké části dáno nízkou bariérou vstupu, člověk bez zkušeností je docela schopný tuto kombinaci zvládnout, čistě metodou Next - Next - Finish. A co je nejzajímavější, tohle všechno bude fungovat. Řekněme více, v drtivé většině případů je výchozí nastavení serveru SQL více než dostatečné k zajištění produktivního provozu serveru 1C: Enterprise a dotýkat se jich je nejen zbytečné, ale dokonce škodlivé.

Nejprve byste si měli pamatovat na základnu systému tempdb, který aktivně používá 1C pro ukládání dočasných tabulek a mezivýsledků. Navíc je okamžitě používán všemi databázemi 1C běžícími na serveru. A jelikož je standardně umístěn v instalační složce SQL serveru, tzn. na systémovém disku, pak při zvýšení zátěže je tempdb se stává úzkým hrdlem pro celý server. Velmi často to vede k situacím: zakoupili jste si rychlý HDD / SSD, máte dostatek diskových prostředků, ale 1C je pomalé, což může začínajícím správcům způsobit vážné potíže.

Druhý bod. Srovnávací kódování tempdb musí odpovídat kódování porovnávání informačních bází, jinak to může v některých případech vést k neočekávaným výsledkům, dokonce k závažným chybám ve výpočtech.

Těmto obtížím přitom není vůbec těžké se vyhnout, stačí strávit pár minut navíc při instalaci nebo pečlivě zkontrolovat nastavení již nainstalovaného serveru.

Instalace MS SQL Server pro práci s 1C:Enterprise

Jak jsme již řekli, instalace SQL serveru je extrémně jednoduchá a tento proces nebudeme podrobně popisovat, zaměříme se pouze na nezbytná nastavení. Začněme výběrem komponent, protože 1C nepoužívá většinu mechanismů SQL serveru a pokud je nehodláte používat pro jiné účely, necháme pouze Databázový stroj,Komunikace s klientskými zařízeními A Řízení(volitelný).

Nástroje pro správu nelze nainstalovat na server, ale instalovat je samostatně na pracovní stanici správce a odtud spravovat všechny dostupné MS SQL servery.

Měli byste také zkontrolovat parametry řazení; pokud máte správně nakonfigurované regionální nastavení, pravděpodobně tam nebudete muset nic měnit, ale je vhodné zkontrolovat tento parametr, měl by tam být Cyrillic_General_CI_AS.

V Konfigurace serveru prosím Ukaž Ověřování ve smíšeném režimu a nastavte heslo na superuživatele SQL - sa. Níže uveďte také správce této instance SQL serveru, ve výchozím nastavení již existuje účet, pod kterým byla instalace provedena, ale pokud tuto instanci musí spravovat i další uživatelé, má smysl je uvést hned.

Další záložka - Datové adresáře- vyžaduje maximální pozornost. Nezapomeňte zadat umístění úložiště pro uživatelské databáze a databázi tempdb místo na výkonovém poli nebo samostatném disku. Navzdory tomu, že umístění databáze lze upřesnit již při jejím vytváření, nastavení správného výchozího nastavení vás ušetří od zbytečné práce a také od situace, kdy je databáze vytvořena pomocí nástrojů 1C a skončí ve výchozím adresáři, tzn. na systémovém disku. Můžete také okamžitě určit adresář pro ukládání záloh.

Zbývající nastavení můžete ponechat jako výchozí a dokončit instalaci.

Nastavení MS SQL Serveru pro práci s 1C:Enterprise

Pokud máte co do činění s již nainstalovanou instancí SQL Server, ujistěte se, že kódování porovnání Cyrillic_General_CI_AS, jinak by měla být data stažena pomocí nástrojů 1C a server by měl být přeinstalován (nebo by měla být nainstalována jiná instance, pokud ji používají jiné služby).

Chcete-li to provést, otevřete Management Studio, vyberte požadovanou instanci SQL serveru, klikněte na ni pravým tlačítkem a přejděte na Vlastnosti.

Poté přejděte na záložku Paměť a uveďte množství paměti RAM dostupné pro SQL server, jinak se SQL server pokusí recyklovat veškerou dostupnou paměť. V situaci, kdy jsou role serveru SQL kombinovány s jinými rolemi a v malých a středně velkých implementacích je obvykle umístěn na stejném počítači se serverem 1C, měli byste odečíst od celkového množství paměti potřebné pro systém. a server 1C, který dává SQL to, co zbývá.

Zde je obtížné dávat jednoznačná doporučení, vše závisí na objemu zpracovávaných dat, v praxi má smysl alokovat polovinu volné paměti SQL serveru a následně tuto hodnotu upravit podle jeho skutečného zatížení.

Další nastavení se bude týkat zabezpečení. Pro připojení 1C k serveru se nejčastěji používá účet sa, který, mírně řečeno, není bezpečný, protože dává člověku, který pod něj vstoupí plný přístup na SQL server. Vzhledem k tomu, že správu databází 1C často provádějí specialisté třetích stran, má smysl pro ně vytvořit samostatný účet.

Chcete-li to provést, otevřete Zabezpečení – přihlášení a vytvořte nový název (účet), zadejte ověření SQL server a nastavte heslo.

Poté přejděte na záložku Role serveru a povolit dbcreator, správce procesu A veřejnost.

Poté použijte tento účet pro připojení k serveru SQL od 1C.

Další nastavení platí pro již vytvořené databáze, otevřete vlastnosti požadované databáze a přejděte na záložku Soubory. Najděte možnost Automatický růst/maximální velikost pro datový soubor. Ve výchozím nastavení je to 1 MB, což je velmi neoptimální, při aktivní práci s databází se bude SŘB zabývat pouze zvětšením velikosti souboru, navíc, když aktivně pracuje několik databází, dojde k výrazné fragmentaci datového souboru. Na základě velikosti databáze a pracovní činnosti tedy nastavte vyšší hodnotu, která nepovede k neustálému navyšování databázového souboru.

Přenos databáze tempdb

Na závěr našeho článku se opět vraťme k databázi tempdb, často nastávají situace, kdy je potřeba soubor této databáze přesunout na jiné místo. Server byl například nainstalován s výchozím nastavením a tempdb umístěnou na systémovém oddílu, nebo jste si zakoupili SSD a chcete tam přenést nejen databáze, ale také tempdb(což je správné řešení). Také při velkém zatížení tempdb Doporučuje se umístit jej na samostatný disk.

Chcete-li změnit umístění souboru tempdb OTEVŘENO Management Studio, vyberte Vytvořte žádost a v okně, které se otevře, zadejte následující text, kde E:\NEW_FOLDER- nové umístění základny:

Použijte mistr
změnit databázi tempdb
upravit soubor (
jméno = tempdev,
název_souboru = N"E:\NEW_FOLDER\tempdb.mdf")
jít

změnit databázi tempdb
upravit soubor (
jméno = templog,
název_souboru = N"E:\NEW_FOLDER\templog.ldf")
jít

Pak klikněte Vykonat, po provedení požadavku restartujte SQL server, databázi a soubory protokolu tempdb budou vytvořeny v novém umístění, soubory ve starém umístění je nutné odstranit ručně.

Dnes zde skončíme a konečně vám připomeneme, abyste nezapomněli na údržbu a zálohování databáze.

Ve většině případů stačí k instalaci 1C:Enterprise 8.x ve verzi klient-server spustit instalační program 1C:Enterprise 8.x. V tomto případě server 1C:Enterprise přijímá standardní hodnoty parametrů nezbytné pro jeho normální fungování.

Podívejme se na instalaci serveru 1C:Enterprise podrobněji. Během instalace serveru 1C:Enterprise 8.x instalační program 1C:Enterprise 8.x provede následující akce:

* Zkopíruje zaváděcí moduly serveru 1C:Enterprise do adresáře určeného instalačním programem 1C:Enterprise jako konečnou složku.
* Pokud během instalace vyberete "Vytvořit uživatele USR1CV81", vytvoří se uživatel USR1CV81. Server 1C:Enterprise 8.1 běží jménem tohoto uživatele, pokud je spuštěn jako služba. Má přístup pouze k těm zdrojům, které server 1C:Enterprise potřebuje. Je důležité, aby server 1C:Enterprise ke svému provozu vyžadoval dva adresáře: obecný adresář s daty serveru (obvykle „C:\Program Files\1cv81\server“) a adresář dočasných souborů (obvykle „C:\Documents and Settings \usr1cv81\Local Settings \Temp" nebo "C:\WINNT\Temp"). Uživatel USR1CV81 obdrží práva ke sdílenému adresáři s daty serveru. Adresář dočasných souborů je obvykle přístupný všem uživatelům.
* Pokud je během procesu instalace povolena možnost „Instalovat server 1C:Enterprise 8.1 jako službu Windows“, zaregistruje službu agenta serveru 1C:Enterprise ve Windows a spustí ji. Při prvním spuštění se vytvoří cluster serverů 1C:Enterprise s výchozím nastavením. Má jeden pracovní server a jeden pracovní proces. Adresa pracovního serveru odpovídá názvu počítače, na kterém byla instalace provedena.

Uživatel USR1CV81 nebo USR1CV82 a jeho práva

1C:Enterprise Server je serverová aplikace, jejíž provoz by neměl záviset na tom, který uživatel je přihlášen k serveru v interaktivním režimu, pokud je vůbec někdo přihlášen. Při instalaci serveru 1C:Enterprise je proto vhodné vytvořit speciálního uživatele USR1CV81, který má minimální práva požadovaná pro server 1C:Enterprise a není určen pro interaktivní přihlášení. Server 1C:Enterprise je představen systému Windows uživatelem USR1CV81.

Podívejme se blíže na práva nastavená pro uživatele USR1CV81. Server 1C:Enterprise používá následující adresáře:

* Adresář pro načítání modulů se nachází v adresáři určeném instalačním programem 1C:Enterprise jako konečná složka. Obsahuje načítací moduly serveru 1C:Enterprise. Uživatel USR1CV81 vyžaduje práva ke čtení dat a spouštění programů z tohoto adresáře a jeho podadresářů. Tato práva získává implicitně zařazením do skupiny Users.
* Adresář dat serveru se obvykle jmenuje "C:\Program Files\1cv81\server". Uživatel USR1CV81 vyžaduje plná práva k tomuto adresáři. Při vytváření uživatele USR1CV81 mu instalační program 1C:Enterprise udělí práva k tomuto adresáři.
* Adresář dočasných souborů se obvykle nazývá "C:\Documents and Settings\usr1cv81\Local Settings\Temp" nebo "C:\WINNT\Temp", který je určen hodnotou proměnné TEMP prostředí uživatele nebo TEMP systémového prostředí. variabilní. Hodnotu této proměnné můžete zobrazit v dialogovém okně Vlastnosti systému (Start -> Nastavení -> Ovládací panely -> Systém -> Upřesnit -> Proměnné prostředí). Instalační program 1C:Enterprise dává uživateli USR1CV81 plná práva k tomuto adresáři. Obvykle je při instalaci systému Windows adresář dočasných souborů přístupný všem uživatelům tak, že do jeho přístupového seznamu zahrnete skupinu CREATOR OWNER. Tento přístup však není úplný. Zejména hledání souborů v tomto adresáři není dostupné všem uživatelům. Nastavení plných práv uživatele USR1CV81 k adresáři dočasných souborů umožňuje serveru 1C:Enterprise provádět všechny operace, které potřebuje. Přístupový seznam můžete zobrazit v dialogovém okně vlastností adresáře na kartě Zabezpečení. Přítomnost skupiny CREATOR OWNER umožňuje přístup do adresáře každému uživateli, který v tomto adresáři vytvoří nějaké soubory nebo vlastní nějaké soubory v tomto adresáři. V tomto případě bude v přístupovém seznamu vytvořeného souboru místo skupiny CREATOR OWNER zapsán uživatel, který soubor vytvořil. Mezi uživateli, kteří mají povolen přístup do tohoto adresáře, musí být uživatel USR1CV81, který má plná práva k tomuto adresáři.
Je důležité mít na paměti, že adresář dočasných souborů pro daného uživatele (včetně uživatele USR1CV81) je určen kombinací proměnných prostředí daného uživatele a systémových proměnných prostředí. Pro zjištění tohoto adresáře si instalační program 1C:Enterprise vyžádá uživatelský kontext USR1CV81. K tomu ve Windows 2000 může uživatel, jehož jménem se spouští instalační program 1C:Enterprise, potřebovat následující oprávnění: Jednat jako součást operačního systému a obejít kontrolu přechodu. Uživatelská oprávnění můžete zkontrolovat pomocí nástroje Local Sequrity Settings ve větvi Místní zásady -> Přiřazení uživatelských práv. Při instalaci nového softwaru získá instalátor tato oprávnění obvykle automaticky.

Registrace serveru 1C:Enterprise jako služby Windows


1C:Enterprise Server je jednoduchá konzolová aplikace Windows a lze ji spouštět interaktivně. Pro neustálé používání je to však nepohodlné, protože vyžaduje spuštění serveru 1C:Enterprise od přihlášení neaktivního uživatele k počítači serveru. K odstranění této závislosti lze server 1C:Enterprise spustit jako službu Windows. Chcete-li to provést, musí být zaregistrován ve správci služeb systému Windows.

Chcete-li zobrazit seznam služeb Windows a jejich parametry, použijte nástroj Component Services (Start -> Nastavení -> Ovládací panely -> Nástroje pro správu -> Služby). Server 1C:Enterprise je v seznamu služeb zastoupen službou „1C:Enterprise Server Agent 8.1“. Parametry služby určují spuštění procesu 1C:Enterprise Server Agent (ragent), uživatele, pod jehož jménem je spuštěn, a způsob restartu v nouzových situacích.

V dialogovém okně vlastností služby „1C:Enterprise 8.1 Server Agent“ je na kartě Obecné zobrazen řádek pro spuštění procesu ragent, což je 1C:Enterprise Server Agent. Obvykle tento řádek vypadá takto:


Uvádí, že:

* proces Server Agent je spouštěcí modul "C:\Program Files\1cv81\bin\ragent.exe";
* proces ragent běží jako služba Windows a musí být spravován správcem služeb (-srvc);
* používá se jako 1C:Enterprise Server Agent (-agent);
* při prvním spuštění služby musí být vytvořen cluster s výchozími parametry a hlavním IP portem číslo 1541 (-regport 1541). Pomocí tohoto portu se klientské aplikace musí připojit k informačním bázím registrovaným v clusteru;
* Port IP agenta serveru musí mít číslo 1540 (-port 1540). Pomocí tohoto portu se Cluster Console musí připojit k centrálnímu serveru, aby mohl provádět administrativní funkce;
* při spuštění clusterových procesů na tomto serveru jim budou dynamicky přiřazeny IP porty z rozsahu 1560-1591 (-rozsah 1560:1591).
* obecná data clusteru budou umístěna v adresáři "C:\Program Files\1cv81\server" (-d "C:\Program Files\1cv81\server").

Službu „1C:Enterprise 8.1 Server Agent“ lze přidat nebo odebrat nejen při instalaci nebo odinstalaci 1C:Enterprise pomocí instalačního programu 1C:Enterprise 8.1, ale také ručně. Chcete-li to provést, můžete spustit obslužný program ragent z příkazového řádku a zadat příslušné parametry.

Pro vytvoření služby je třeba zadat parametr -instsrvc a následující parametry: -usr - jméno uživatele, pod jehož jménem má být služba spuštěna, -pwd - heslo tohoto uživatele. V tomto případě se zbývající parametry stanou parametry spouštěcí linky 1C:Enterprise Server Agent jako služby. Například pro standardní registraci služby 1C:Enterprise Server Agent v režimu ladění by sada parametrů měla být následující:

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

Chcete-li odebrat službu, musíte zadat parametr -rmsrvc. Například:
"C:\Program Files\1cv81\bin\ragent.exe" -rmsrvc

Někdy je užitečné změnit spouštěcí řádek Server Agent nebo jiné parametry služby Agent, například povolit režim ladění nebo vytvořit několik služeb různých verzí. Dialogové okno vlastností služby neumožňuje upravit řádek spouštění servisní aplikace a některé další parametry, například identifikátor služby. K úpravám budete potřebovat obslužný program regedit, určený k prohlížení a úpravě systémového registru Windows.

Pozornost!
Úprava registru systému Windows vyžaduje mimořádnou opatrnost, protože chybné změny v něm mohou způsobit nefunkčnost operačního systému.

Spusťte nástroj regedit (otevřete Start -> Spustit a zadejte příkaz regedit) a vyberte větev:


Mezi jeho parametry patří parametr ImagePath, jehož hodnota je spouštěcí řetězec 1C:Enterprise Server Agent. Zde můžete přidat nové parametry spouštěcího řetězce nebo změnit hodnoty stávajících. Kompletní seznam možných parametrů je uveden v dokumentaci knihy "1C:Enterprise 8.1 Client-Server".

Pokud potřebujete zaregistrovat několik nezávislých služeb 1C:Enterprise Server Agent, musíte jim zadat různé spouštěcí moduly, různé porty a různé datové adresáře clusteru. Musíte je také zaregistrovat s různými identifikátory služeb. To lze provést takto:

* Vytvořte první službu:
"C:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -rozsah 1560:1591 -d "C:\Program Files\1cv81\server"

* Pomocí nástroje regedit změňte identifikátor registrované služby. Chcete-li to provést: vyberte pobočku
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
* Vytvořte druhou službu:
"C:\Program Files\1cv81_10\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -rozsah 1660:1691 -d "C:\Program Files\1cv81_10\server"

* Možná by se měl změnit i jeho průkaz totožnosti. Chcete-li to provést: vyberte pobočku
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
a změňte jeho název, například na:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent Second

Co neumí instalační program 1C:Enterprise?

Jak již bylo zmíněno, instalační program 1C:Enterprise zkopíruje spouštěcí moduly 1C:Enterprise a provede potřebnou registraci v COM a ve správci služeb Windows. Výše uvedené informace jsou nezbytné pro pochopení vnitřních mechanismů této registrace. Pokud je na serverovém počítači nainstalován nejen server, ale také klientská část 1C:Enterprise, je připravena k práci ihned po instalaci (a připojení bezpečnostních klíčů).

Aby byl server 1C:Enterprise přístupný z jiných počítačů v místní síti, musíte zkontrolovat nastavení sítě na serveru a klientských počítačích a také pro síť jako celek. TCP/IP se používá k přenosu dat mezi klientskými aplikacemi a serverem 1C:Enterprise a také mezi procesy serverového clusteru. Provoz 1C:Enterprise ve verzi klient-server závisí na jeho správné konfiguraci.

Procesy klastru serverů 1C:Enterprise se vzájemně propojují na adresách definovaných jako hodnoty vlastnosti „Počítač“ v dialogovém okně vlastností pracovních serverů. Cluster vyžaduje, aby hodnota vlastnosti Computer byla buď IP adresa v tečkové notaci, nebo symbolická adresa, ze které lze IP adresu určit pomocí funkce gethostbyname definované v TCP API. Adresa IP je určena buď na základě místní tabulky symbolických adres (C:\WINNT\system32\drivers\etc\hosts), nebo podle tabulek adres na dostupných serverech DNS. Pokud symbolická adresa pracovního serveru neurčuje jeho IP adresu nebo ji určuje nesprávně (například IP adresa neodpovídá skutečné IP adrese tohoto počítače), cluster nebude fungovat. Je důležité, aby názvy počítačů a jejich adresy definované ve Windows na každém z pracovních serverů v clusteru neodporovaly jejich jménům v DNS.

Na každém pracovním serveru používají klastrové procesy následující porty: IP port pracovního serveru (obvykle 1540); IP porty z pracovního postupu Rozsahy IP portů (obvykle 1560-1591). Centrální server clusteru navíc používá port clusteru (obvykle 1541). Pokud systém používá firewally, pak musí být povolen přenos dat na těchto portech. Místo povolení portů z výše uvedeného seznamu můžete povolit přenos dat do clusterových procesů (ragent, rmngr, rphost).

Spojení mezi klientskou aplikací 1C:Enterprise a serverem probíhá ve 2 fázích. Nejprve vytvoří připojení ke správci clusteru. To používá adresu centrálního serveru (symbolickou nebo číselnou) a port clusteru (obvykle 1541). Dále klientská aplikace naváže spojení s jedním z pracovních procesů. Jako jeho adresa se použije hodnota vlastnosti "Počítač" odpovídajícího pracovního serveru a port pracovního procesu, který je vybrán z rozsahu IP portů pracovního serveru. Přenos dat na tyto porty musí být povolen ve všech firewallech na trase z klientského aplikačního počítače do počítačů serverového clusteru 1C:Enterprise. IP adresa serverových procesů je určena pomocí funkce gethostbyname na klientském počítači. Je důležité, aby názvy centrálních a pracovních serverů a jejich adresy definované ve Windows na každém ze serverů v clusteru neodporovaly jejich jménům v DNS přístupném klientskému počítači.

A poslední věc. Je zřejmé, že pro úspěšný přístup k serveru 1C:Enterprise z jiných počítačů musí být server v síti a musí být k tomu provedena nezbytná nastavení. Připojení k síti a způsoby nastavení se týkají správy sítí založených na Microsoft Windows a jsou popsány v příslušných pokynech.

Vlastnosti nastavení SQL serveru

1C:Enterprise ve verzi „klient-server“ používá k ukládání dat SQL server. V tomto případě přistupuje k serveru SQL pouze 1C:Enterprise Server. 1C:Enterprise klienti nemají přímý přístup k serveru SQL. Instalace a konfigurace serveru SQL je podrobně popsána v dokumentaci k serveru Microsoft SQL Server. Pro úspěšný provoz 1C:Enterprise Server se serverem SQL musíte věnovat zvláštní pozornost následujícímu nastavení.

* Požadované součásti serveru SQL. Pro přístup k SQL serveru ze strany 1C:Enterprise Server musí být na počítači 1C:Enterprise Server nainstalovány komponenty Microsoft Data Access 2.6 nebo novější.
* Autentizace uživatele pomocí SQL serveru. Přístupová práva k databázím SQL serveru určuje uživatel, jehož jménem se k databázím přistupuje. Z počítače, na kterém je nainstalován SQL server, spusťte obslužný program SQL Server Enterprise Manager, najděte Lokální uzel (Kořen konzoly -> Servery Microsoft SQL -> Skupina serverů SQL -> (Místní)) a otevřete jeho vlastnosti. Na záložce Sequrity můžete vidět, že SQL server podporuje dvě metody ověření uživatele: SQL Server a Windows a pouze Windows. Ověření systému Windows umožní serveru 1C:Enterprise Server přistupovat k serveru SQL pouze jménem uživatele USR1CV81, což neumožňuje rozlišovat přístupová práva k různým databázím obsluhovaným jedním serverem 1C:Enterprise. Doporučuje se vybrat režim SQL Server a Windows. V tomto případě bude přístup ke konkrétní infobázi proveden jménem uživatele, který byl při vytváření této infobáze zadán jako uživatel SQL serveru. Důležité je, že tento uživatel musí mít nejen plná práva k databázi infobáze, ale také práva k vytváření databází na SQL serveru a ke čtení tabulek Master databáze.
* Síťové protokoly pro přístup k serveru SQL. Pokud jsou 1C:Enterprise Server a SQL server umístěny na různých počítačích, musíte nakonfigurovat protokoly síťového přístupu k serveru SQL. To lze provést pomocí nástroje SQL Server Client Network Utility. Na kartě Obecné můžete vybrat seznam síťových protokolů používaných pro přístup k serveru SQL. Nejrychlejší a nejuniverzálnější je použití protokolu TCP/IP. Při používání jiných protokolů musíte mít na paměti, že některé z nich, například Named Pipes, provádějí při výměně dat se serverem SQL další autentizaci pomocí nástrojů Windows. V tomto případě pro úspěšnou práci s SQL serverem musí být uživatel USR1CV81 registrován na počítači s SQL serverem s příslušnými právy. Přístupový protokol pro tento SQL server lze změnit na kartě Alias.

Kromě článku

Není pochyb o tom, že kombinace MS SQL Server + 1C: Enterprise 8 server je nejoblíbenější a často používanou kombinací ve svém výklenku. Pro jeho kvalitní podporu je žádoucí porozumění oběma produktům. Zároveň se v praxi specialista podpory obvykle buď specializuje na správu MS SQL Server a není obeznámen s funkcemi serveru 1C: Enterprise 8, nebo se naopak specializuje na správu serveru 1C: Enterprise 8 a není obeznámeni s funkcemi MS SQL Server.

Tento článek byl napsán s cílem pomoci těmto i dalším specialistům, navržený tak, aby šetřil váš čas a upoutal vaši pozornost na nejdůležitější detaily při společném používání těchto softwarových produktů.

Pro snazší pochopení informací jsou uvedeny případové studie, poznámky a tipy (kurzívou).

Tříčlánkový obvod

Jak již čtenář možná ví, databáze v posuzovaném případě má třívrstvou architekturu:

Odkaz 1: MS SQL Server DBMS. „Ukládá“ a udržuje databázi a nakonec provádí všechny typy databázových operací. Výkon databáze, rychlost a paralelnost čtení a zápisu dat jsou tedy do značné míry určeny výkonem MS SQL Serveru.

Odkaz 2: Server "1C: Enterprise 8". Slouží jako prostředník v interakci mezi klienty (uživateli) a MS SQL Serverem. Všechny klientské požadavky jsou odesílány na server, který je „přeloží“ do dotazovacího jazyka MS SQL Serveru, obdrží výsledky provedení těchto dotazů a výsledky odešle klientovi.

Existuje pouze malá část operací, které se provádějí na úrovni serveru 1C: Enterprise 8, bez přístupu k MS SQL - jedná se zejména o sledování takzvaných „spravovaných zámků“, čtení a zápis „parametrů relace“. V takových případech není vyžadován přístup k DBMS, protože tyto operace se neprovádějí s databázovými daty, ale s pomocnými informacemi o serveru.

Odkaz 3: Klientská část "1C: Enterprise 8". Přistupuje k serveru 1C: Enterprise 8, přijímá z něj výsledky (tedy například vzorky dat) a je zodpovědný za uživatelské rozhraní.

"Chtěl jsem to nejlepší."

Po přeinstalaci serveru 1C: Enterprise 8 si uživatelé stěžují na prudký pokles výkonu. Specialista na implementaci softwaru 1C: Enterprise, který provedl přeinstalaci, je pouze překvapen - říkají, že chtěl to nejlepší, systém měl začít pracovat rychleji... Analýza situace ukázala, že serveru 1C: Enterprise 8 bylo přiděleno příliš mnoho zdrojů : zpracovává (viz bod 3) rphost zabíral 15,5 GB z 16 GB RAM serveru, v důsledku toho nebyla pro vyhovující MS SQL Server prakticky žádná dostupná RAM.

Výsledkem je neustálé „swapování“, zbytečné zatížení diskového subsystému a extrémně pomalé provádění databázových operací – kvůli tomu, že MS SQL Server nemá čas zpracovávat požadavky přicházející z „přetaktovaného“ 1C: Enterprise 8 server.

Kompatibilita produktu

Aktuální informace o verzích MS SQL Server doporučených pro použití ve spojení s 1C: Enterprise 8 naleznete na tomto odkazu http://v8.1c.ru/requirements/.

V době psaní tohoto článku doporučují vývojáři 1C následující možnosti:

      1. SQL Server 2008 R2.
      2. SQL Server 2008 vyžaduje instalaci aktualizace Service Pack 1 (SP1).
    3. SQL Server 2005 vyžaduje instalaci aktualizace Service Pack 3 (SP3).



Technicky je možné, ale nedoporučuje se používat MS SQL Server 2000, vyžaduje instalaci Service Pack 2 (SP2) a instalace Service Pack 4 (SP4) je žádoucí.

Upozorňujeme, že tato verze je v současné době zastaralá a nemá 64bitovou verzi pro architekturu x86-64.

Poznámka:

Je nutné věnovat pozornost nastavení operačního systému: např. pro efektivní provoz M SQL Serveru 2008 pod OS Server 2008R2 je nutné vypnout režim vyváženého napájení a přepnout do režimu maximálního výkonu.

Instalace klient-server verze "1C: Enterprise 8"

"1C nainstalován"

U jednoho ze zákazníků provedl instalaci 1C: Enterprise 8 správce systému, který neměl žádné zkušenosti s prací s 1C: Enterprise 8. A ačkoli podle něj „nainstaloval 1C“, na uživatelských počítačích nebyla žádná klientská část a na serveru serverová část. Analýza situace obrázek objasnila - sada 1C: Enterprise 8 obsahovala 2 disky - instalace platformy a instalace databázových šablon. Administrátor se neponořil do instalační procedury – a nainstaloval šablony databáze, spíše než spustitelné soubory, součásti platformy.

Samozřejmě jde o netypický příklad mimořádně nevšímavého přístupu k práci.

Při instalaci "1C: Enterprise 8" byste měli vzít v úvahu, že následující jsou nainstalovány samostatně:

      Platforma 1C: Enterprise 8 je spustitelná aplikace, integrované prostředí pro vývoj a provoz databází. Při jeho spuštění si vyberete jeden ze dvou provozních režimů – „Enterprise“ (skořápka uživatelské databáze) nebo „Konfigurátor“ (integrované vývojové prostředí). Podrobnější popis si můžete přečíst v odkazu
      Konfigurační šablony „1C: Enterprise“ jsou souborem interního formátu platformy, s jehož pomocí může platforma vytvořit čistou nebo demo databázi struktury obsažené v šabloně. Vzor aktualizace můžete také použít k aktualizaci struktury existující databáze, která je již naplněna daty.
      Při instalaci platformy byste měli věnovat pozornost výběru komponent:





Komponenta 1C: Enterprise nemusí být nainstalována na serverech.

V tomto případě server poskytne klientským počítačům přístup k databázím 1C: Enterprise, ale práce s databází v uživatelském režimu přímo ze serveru nebude možná.

Poznámka:

64bitová verze platformy neobsahuje klientskou část. Proto se při instalaci na server instalují součásti 64bitového serveru samostatně a součásti 32bitové klientské aplikace se instalují samostatně.

Komponenta "1C Server: Enterprise" je potřebná pro připojení k MS SQL Server - jedná se o aplikační server, spojovací článek mezi platformou na klientských pracovních stanicích a MS SQL Serverem.

Komponentu je možné nainstalovat v režimu jednoduché aplikace nebo systémové služby a samozřejmě se doporučuje druhá možnost.

Při instalaci „jako služba“ bude tato komponenta spuštěna a spuštěna jménem vybraného uživatele:




Po načtení komponenta spustí několik procesů, například: „serverový agent“, „server cluster manager“, „server worker processs“.

Dotazy do databáze jsou prováděny pracovními procesy a správce clusteru serverů mezi ně rozděluje zátěž.

Pracovní procesy serveru lze spravovat (přidávat, odstraňovat, nastavovat limity využití paměti RAM, deklarovat primární nebo záložní), pokud je nainstalována komponenta 1C: Enterprise Server Administration.



Poznámka:

U 32bitové verze serveru se doporučuje instalovat pracovní procesy v takovém počtu, aby nezůstaly nevyužité RAM - každý z nich má znatelné omezení využití RAM, od 2 do 4 GB v závislosti na systému konfigurace.

Pro 64bitovou verzi serveru teoreticky postačují dva pracovní procesy - jeden pracovní a jeden záložní. V praxi je však pro zajištění spolehlivosti a stability připojení pro významný (několik set) počet uživatelů potřeba větší počet, záleží na mnoha faktorech - na počtu uživatelů, obsahu databáze a objemu provedených dotazů, takže se autoři domnívají, že počet procesů by v tomto případě měl být vybrán experimentálně.

"ouroboros"

Po neúspěšné optimalizaci nastavení serveru 1C: Enterprise 8 uživatelé hlásili extrémně pomalý provoz systému a správce systému zaznamenal konstantní 100% zatížení procesoru na serveru.

Analýza situace ukázala zdroj problému - při konfiguraci byl nastaven příliš malý limit na využití RAM pracovními procesy.

Faktem ale je, že toto omezení funguje následovně:

Když správce clusteru serverů zjistí, že pracovní proces překročil limit RAM, proces se ukončí, zakáže, vytvoří se nový pracovní proces a mezi pracovními procesy se přerozdělí připojení a požadavky uživatelů.

Nastavený limit byl tak malý (300 MB), že pracovní proces nemohl plně obsloužit ani jednoho intenzivního uživatele – v důsledku toho správce clusteru serverů neustále restartoval pracovní procesy a znovu připojoval uživatele. Jakmile byl vytvořen nový proces a uživatelé se k němu připojili, byl téměř okamžitě dosažen limit RAM a způsobil další restart. To zabralo 100 % zatížení procesoru.

Komponenta „1C Server: Enterprise“ není na klientských pracovních stanicích potřeba a nebude možné ji spustit, protože vyžaduje fyzickou přítomnost bezpečnostního klíče.

Pokud je počet připojených uživatelů malý (méně než 50), je aplikační server obvykle nainstalován na stejném počítači, kde běží MS SQL Server.

Pro systémy s velkým počtem uživatelů a/nebo velkým objemem informačních toků se doporučuje samostatná instalace a také použití serverového clusteru.

Komponenta „1C: Enterprise Server Administration“ může být užitečná i na klientech – například s její pomocí můžete vidět seznam infobází připojených k danému serveru „1C: Enterprise“.

Důrazně se doporučuje nainstalovat jej na samotný server.

Přístup

Poznámka:

K ověření, že je poskytován přístup, nestačí použít obslužný program pro správu serveru 1C: Enterprise a ještě více nestačí přítomnost serveru v „Network Neighborhood“!

Je nutné, aby se každý klient přihlásil do databáze nainstalované na serveru – jedině tak získáte 100% jistotu, že je přístup poskytnut.

1. V závislosti na zásadách zabezpečení používá MS SQL Server ověřování účtu Windows nebo ověřování účtu MS SQL Server.




V druhém případě si systém při vytváření databáze 1C: Enterprise vyžádá přihlašovací jméno a heslo k účtu MS SQL Server (například sa), v prvním případě by přihlašovací jméno a heslo mělo zůstat prázdné:



a systémový uživatel, v jehož zastoupení běží server 1C: Enterprise, musí mít práva na MS SQL Server, konkrétně:

      plná práva k databázi, ve které se informační základna nachází
      přístup do hlavní databáze (veřejná role)
      doporučeno - práva k vytvoření databáze, jinak bude nutné každou novou databázi nejprve vytvořit pomocí MS SQL Sever a teprve poté připojit k serveru 1C: Enterprise
      doporučeno - právo smazat databázi



Dotyčnému uživateli můžete například přiřadit pevnou roli processadmin nebo sysadmin.

Rada.

Pokud všichni uživatelé současně ztratí přístup k pracovní databázi, musíte znovu zkontrolovat uživatelská práva a role v MS SQL Server, včetně těch nastavených pro konkrétní databázi, tedy Mapování uživatelů:




2. Server 1C: Enterprise přistupuje k MS SQL Server prostřednictvím mechanismu Microsoft Data Access, takže jeho součásti musí být nainstalovány a uživatel serveru 1C: Enterprise (viz předchozí odstavec) musí mít práva k jejich spuštění.

3. Komunikace mezi klienty a serverem je podporována protokolem TCP, proto je nutné, aby tento protokol podporovaly obě strany. Mohou nastat problémy se shodou názvu serveru a jeho IP adresy, například při použití sítě peer-to-peer. V tomto případě byste měli zaznamenat korespondenci do souboru [C:\WINDOWS\] system32\drivers\etc\hosts .

Rada.

Pokud je síť typu peer-to-peer, pro zajištění trvalého připojení k serveru vytvořte síťovou jednotku, která bude přistupovat ke kterékoli složce tohoto serveru.

4. Pokud se používá protokol Named Pipes a pokud jsou MS SQL Server a server 1C: Enterprise nainstalovány na různých počítačích, uživatel, jehož jménem server 1C: Enterprise běží, musí být zaregistrován v seznamu uživatelů počítače. na kterém běží MS SQL Server.

5. V některých případech může být vyžadována další konfigurace brány firewall systému Windows, tj. přidání výjimek.

6. Některé antivirové programy mohou blokovat „nežádoucí“ síťový provoz, takže možná budete muset přidat do jejich seznamů vyloučení.

7. Vydání platformy 1C: Enterprise 8 musí být naprosto totožné na klientovi i na serveru.

"Dvojčata"

"Jeden ze zákazníků používal dva databázové servery, z nichž každý obsahoval jednu fungující databázi. Uživatelé pracovali - každý současně s oběma databázemi. Služba podpory aktualizovala platformu 1C: Enterprise 8 na serverech a klientech.... A pak se začaly hrnout stížnosti pro nemožnost připojení - nejprve k té či oné databázi Analýza situace ukázala, že aktualizaci na klientech a serverech provádělo více lidí a instalační specialisté si dvakrát nezkontrolovali, zda instalují stejnou verzi. , na jednom serveru bylo jedno vydání platformy, na druhém - další, na polovině klientů - první z těchto vydání, na druhé polovině - druhé... Ukázalo se, že každý uživatel má přístup pouze jednu z databází.

Pro rychlé vyřešení problému musel každý uživatel nainstalovat obě verze platformy a vytvořit samostatné zástupce pro přihlášení do každé databáze.

Počáteční nastavení MS SQL Serveru a databáze

"A takhle to funguje"

MS SQL Server se vyznačuje jednoduchou úvodní instalací, takže ne všichni správci se obtěžují s jeho dodatečnou konfigurací - po provedení výchozí instalace databáze funguje, uživatelé jsou přihlášeni - práce je hotová. Tento přístup vede téměř vždy k problémům vznikajícím zhruba po měsíci až dvou – a samozřejmě náhle a v tu nejnevhodnější chvíli.

Je-li například databáze určena pro účetní účely, je často nutné před podáním daňových přiznání urychleně přepočítat některá data a hromadně přepočítat, řekněme, „všechny příjmy dlouhodobého majetku od začátku roku“. Navíc během pracovního dne bez zastavení práce ostatních uživatelů databáze.

A samozřejmě právě v tuto chvíli se zjistí, že při takovém přepočtu databáze „zamrzá“, „padá“ nebo neumožňuje práci dalším uživatelům.

Tento druh „Murphyho zákona“ platí pro každý z následujících bodů.

Než začnete používat MS SQL Server jako DBMS pro 1C: Enterprise, doporučujeme:

1. Nastavte hodnotu parametru maximálního stupně rovnoběžnosti na 1.

to je:

      Po připojení k serveru zadejte vlastnosti serveru přes kontextové menu, položku Vlastnosti
      poté vyberte stránku Advanced a upravte parametr maximálního stupně paralelismu






V opačném případě mohou některé dotazy generované serverem 1C: Enterprise způsobit chybu „Paralelismus uvnitř dotazu způsobil uváznutí příkazu serveru (ID procesu #XX). Spusťte dotaz znovu bez paralelismu uvnitř dotazu pomocí možnosti nápovědy k dotazu (maxdop 1 )". Po této chybě klientská část často padá.

Chyba se nebude objevovat konzistentně, protože plán dotazů se tvoří odlišně v závislosti na nashromážděných statistikách - projeví se na velkých a složitých dotazech, tedy v nejnešťastnějším okamžiku.

2. Vytvořte plán údržby, který každou noc zmenšuje databázi dočasných tabulek tempdb. Databáze dočasných tabulek není vždy automaticky vymazána serverem 1C: Enterprise a někdy může být v důsledku neúspěšně napsaného dotazu vytvořena dočasná tabulka o velikosti například 50 GB a nevymazána. V důsledku toho může dojít k nedostatku místa na disku, v důsledku čehož může dojít k selhání klientské i serverové části a také existuje mírné riziko narušení integrity dat.

To znamená, že potřebujete:

      přejděte do MS SQL Management Studio
      po připojení k serveru rozbalte sekci "Plány údržby".
      vytvořit nový (nebo přidat do stávajícího) servisního plánu,
      přidejte do něj položku "Execute T-SQL Statement task" (protože v úloze "Shrink database" nemůžete vybrat databázi tempdb) s kódem




1.POUŽÍVEJTE
2.
3.GO
4.
5. DBCC SHRINKFILE (N"tempdev" , 0, POUZE TRUNCATEONLY)
6.
7.GO
8.
9. DBCC SHRINKFILE (N"templog" , 0, POUZE TRUNCATEONLY)
10.
11.GO

Všimněte si, že název souboru databáze dočasné tabulky nemusí být "tempdev". Tento název můžete zkontrolovat pomocí skriptu

1.POUŽÍVEJTE tempdb
2.
3.GO
4.
5.EXEC sp_helpfile
6.
7.GO




"Hrnec, nevař"

Nejběžnějším způsobem v praxi přeplnění databáze tempdb a tím pádem serveru je zapomenutí zadat podmínku při spojování tabulek.

Konkrétně řekněme, že máme v databázi dvě tabulky, každou o velikosti 20 tisíc záznamů. Řekněme, že mezi jejich záznamy existuje korespondence jedna ku jedné a napíšeme dotaz, který vytvoří dočasnou tabulku obsahující 20 tisíc záznamů s poli z obou zdrojových tabulek. Pokud ale zapomeneme zadat podmínku spojení, každý záznam první tabulky bude spojen s každým záznamem druhé! To znamená, že výsledná tabulka se bude skládat z 20 000 * 20 000 = 400 milionů záznamů. A tak dále.

3. Aby se snížilo zatížení diskového subsystému, doporučuje se, pokud je to možné, distribuovat fungující databázi a databázi tempdb, protokoly a systémový odkládací soubor na různé fyzické disky.

Požadovanou cestu pro uložení pracovních databázových souborů je lepší nastavit při jejich vytváření úpravou sloupce Cesta:




Chcete-li změnit fyzické umístění dočasných databázových souborů tabulek, použijte příkaz ALTER DATABASE, to znamená, že v MS SQL Management Studio musíte spustit následující skript (příkaz "Nový dotaz")

1.USE master
2.
3.GO
4.
5.ALTER DATABASE tempdb
6.
7. UPRAVTE SOUBOR (NAME = tempdev, FILENAME = "Nový_Disk:\Nový_adresář\tempdb.mdf")
8.
9.GO
10.
11.ALTER DATABASE tempdb

12.
13. UPRAVTE SOUBOR (NÁZEV = templog, FILENAME = "Nový_Disk:\Nový_adresář\templog.ldf")
14.
15.GO

4. „Růst“ pracovní databáze a jejího logu by neměl být omezován – velikost by neměla být omezena, vlastnost „Autogrowth“ by měla být nastavena v procentech, doporučená hodnota je 10 %. V opačném případě může přidání dat do databáze, obnova z archivu a další operace trvat nepřiměřeně dlouho.

Chcete-li nastavit tuto vlastnost, musíte přejít do vlastností databáze přes kontextovou nabídku, vybrat sekci Soubory a otevřít úpravy vlastností souboru:



5. Doporučuje se povolit podporu síťového protokolu TCP/IP v MS SQL Server a zakázat všechny ostatní, jinak bude společný provoz MS SQL Serveru a 1C: Enterprise serveru méně stabilní.




6. Na stejném místě - vymažte sekci Alias, protože jeho instalace vede k chybám v interakci mezi MS SQL Server a 1C: Enterprise serverem.

Před zahájením používání databáze se doporučuje:

1. Při vytváření databáze z „1C: Enterprise“ nastavte „posun data“ na 2000, jinak pokus o zaznamenání data dřívějšího než 01.01.1753 (což je možné kvůli lidskému faktoru) způsobí selhání databáze.

Pozornost! Posun data nelze změnit u existující databáze!



2. Nastavte model obnovy na Jednoduchý nebo vytvořte plán údržby, který vytvoří denní zálohu databáze a ořízne protokol transakcí (soubor protokolu). Jinak se při některých operacích transakční protokol (soubor protokolu) velmi rychle zvětší: například při restrukturalizaci databáze může být nárůst velikosti souboru protokolu několikanásobně větší než velikost samotné databáze.




3. Vytvořte plán údržby, který alespoň jednou týdně provádí následující rutinní úkoly:

      Vytvoření záložní kopie databáze.
      Aktualizujte statistiku databáze a vymažte mezipaměť procedur (všimněte si, že vlastnost statistiky autoupdate neznamená vymazání mezipaměti procedur).
      Vymazání mezipaměti procedur není součástí standardních operací plánů údržby; tento krok je nutné definovat jako spuštění skriptu (Execute T-SQL Statement) s následujícím obsahem:
      DBCC FREEPROCCACHE
      Přeindexování databázových tabulek.






Samozřejmě má smysl nastavit automatické zasílání emailů o úspěšném/neúspěšném splnění úkolů.




Závěr

Problémy, které nejčastěji způsobují potíže systémovým administrátorům a implementátorům 1C: Enterprise 8, jsou zvažovány v souvislosti se společným používáním MS SQL Server a klient-server verze 1C: Enterprise 8.

Autor doufá, že pokryl „obě strany mince“ poměrně konzistentním a přístupným způsobem.

P.S. Zálohujte často!

Klient-server verze práce- jedna z možností provozování systému 1C:Enterprise 8.

Verze díla klient-server je určena pro použití v pracovních skupinách nebo v podnikovém měřítku. Je implementován na základě třívrstvé architektury klient-server.

Architektura klient-server rozděluje celý pracovní systém na tři různé části, které spolu určitým způsobem interagují:

Program spuštěný pro uživatele (klientskou aplikaci) spolupracuje se serverovým clusterem 1C:Enterprise 8 a cluster v případě potřeby přistupuje k databázovému serveru.

V tomto případě mohou být fyzický cluster serverů 1C:Enterprise 8 a databázový server umístěny buď na stejném počítači, nebo na různých. To umožňuje správci v případě potřeby rozložit zátěž mezi servery.

Použití serverového clusteru 1C:Enterprise 8 vám umožní soustředit na něj nejrozsáhlejší operace zpracování dat. Například při provádění i velmi složitých dotazů program běžící pro uživatele obdrží pouze výběr, který potřebuje, a veškeré mezizpracování bude provedeno na serveru. Zvýšení kapacity serverového clusteru je obvykle mnohem jednodušší než upgrade celé flotily klientských strojů.

Dalším důležitým aspektem použití 3vrstvé architektury je snadná administrace a zefektivnění přístupu uživatelů k informační základně. V této volbě si uživatel nemusí být vědom fyzického umístění konfigurace nebo databáze. Veškerý přístup se provádí prostřednictvím clusteru serverů 1C:Enterprise 8. Při přístupu ke konkrétní infobázi musí uživatel zadat pouze název clusteru a název infobáze a systém si vyžádá uživatelské jméno a heslo.

1C:Enterprise 8 využívá možnosti systému správy databází k efektivnímu získávání informací:

  • mechanismus dotazů je zaměřen na maximální využití DBMS k provádění výpočtů a generování zpráv,
  • prohlížení velkých dynamických seznamů je zajištěno bez provádění velkého počtu databázových volání; zároveň má uživatel k dispozici efektivní možnosti vyhledávání a také nastavení výběru a řazení.

Nasazení možnosti klient-server a její správa je poměrně jednoduchá. Například vytvoření databáze se provádí přímo při spuštění konfigurátoru (stejně jako u verze souboru).

Klientské aplikace

Práce ve verzi klient-server je možná buď přímo s clusterem, nebo přes webový server. Navíc v případě přímého připojení ke clusteru tlustý klient a tenký klient používají protokol TCP/IP. Při připojení přes webový server používá tenký klient a webový klient protokol HTTP nebo HTTPS.

Serverový cluster

Serverový cluster 1C:Enterprise 8 je hlavní součástí platformy, která zajišťuje interakci mezi uživateli a systémem správy databází v režimu klient-server. Přítomnost clusteru umožňuje zajistit nepřetržitý, proti chybám odolný, konkurenční provoz velkého počtu uživatelů s velkými informačními databázemi.

Databázový server

Jako databázový server lze použít následující:

Správa clusteru serverů

Platforma obsahuje sadu různých nástrojů, které umožňují správci spravovat složení clusteru, informační databáze a připojení uživatelů.

Provádění základních funkcí na serveru

Veškerá práce s aplikačními objekty, čtení a zápis databáze probíhá pouze na serveru. Na serveru je implementována i funkčnost formulářů a příkazového rozhraní.

Server připraví data formuláře, uspořádá prvky a po změnách zaznamená data formuláře. Klient zobrazí formulář již připravený na serveru, zadá data a zavolá server k zaznamenání zadaných údajů a dalších potřebných akcí.

Podobně je příkazové rozhraní vytvořeno na serveru a zobrazeno na klientovi. Zprávy jsou také generovány výhradně na serveru a zobrazeny na klientovi.

Mechanismy platformy jsou zároveň zaměřeny na minimalizaci objemu dat přenášených na klientský počítač. Například data ze seznamů, tabulkových sekcí a reportů se nepřenášejí ze serveru okamžitě, ale tak, jak si je uživatel prohlíží.

Server běží:

  • Databázové dotazy
  • Záznam dat,
  • Vyřizování dokumentů,
  • Různé výpočty
  • Provádím zpracování,
  • generování reportů,
  • Příprava formulářů k vystavení.

Běží na klientovi:

  • Příjem a otevírání formulářů,
  • Zobrazení formuláře,
  • „Komunikace“ s uživatelem (upozornění, dotazy...),
  • Malé kalkulace ve formulářích, které vyžadují rychlou odezvu (například vynásobení ceny množstvím),
  • Práce s místními soubory,
  • Práce s komerčním zařízením.

Použití vestavěného jazyka na klientovi

Funkčnost formulářů můžete spravovat nejen na serveru, ale i na klientovi. Klient podporuje vestavěný jazyk. Používá se v případech, kdy je nutné provést výpočty související s formulářem zobrazeným na obrazovce, například rychle (bez kontaktování serveru) vypočítat množství řádku dokladu na základě ceny a množství; položit uživateli otázku a zpracovat odpověď; přečíst soubor ze systému souborů počítače a odeslat jej na server.

Provoz vestavěného jazyka na klientovi je však podporován v přísně omezené míře. Klientské procedury v modulech jsou explicitně odděleny od serverových procedur a využívají omezené složení objektového modelu vestavěného jazyka.

Přímá práce s databází není na klientovi povolena. Přímá práce s aplikačními objekty není povolena, například takové typy vestavěného jazyka jako DirectoryObject.<имя> . Žádosti nejsou povoleny. Pokud potřebujete volat akce s daty v klientském kódu, musíte volat procedury serveru, které již budou k datům přistupovat.

Nabídka beta

Nastavení 1C:Enterprise Server 8.3 a PostgreSQL 9.4.2-1.1C. Kompletní pokyny

V tomto návodu si řekneme (a ukážeme), jak nastavit připojení 1C:Podnik 8.3 A PostgreSQL 9.4.2 od okamžiku instalace obou služeb až po vytvoření informační báze. O vyladění této kombinace si můžete přečíst.

Fáze, kterými musíme projít:

  1. Instalace Servery 1C:Enterprise(64bitová verze) pro Windows
  2. Instalace PostgreSQL 9.4.2-1.1C
  3. Vytvoření informační databáze.

Více detailů pod střihem!

Fáze 0. Vstupní data.

Název serveru - 1CServer
Název účtu serveru - Správce
Heslo k účtu - 123456Ab

Název účtu 1C na serveru - USR1CV8
Heslo pro účet 1C na serveru je 123456Cd

Název účtu PostgreSQL na serveru - postgres
Heslo pro PostgreSQL účet na serveru je 123456Ef

Jméno superuživatele PostgreSQL - postgres
Heslo superuživatele PostgreSQL - 1234

Název testovací databáze − testdb

Fáze 1. Instalace Servery 1C:Enterprise(64bitová verze) pro Windows


Fáze 2. Nainstalujte PostgreSQL a pgAdmin.


Fáze 3. Vytvoření informační základny 1C.

  1. Před provedením následujících operací deaktivujte IPv6 na vašem síťovém rozhraní: Centrum sítí a sdílení > LAN připojení > Vlastnosti> Zrušte zaškrtnutí Internetový protokol verze 6 (TCP/IPv6).
  2. Spustíme klienta 1C:Enterprise a přidáme novou databázi.
  3. Vytvoření nové infobáze > Vytvoření infobáze bez konfigurace (můžete mít například libovolnou konfiguraci) > Na serveru 1C:Enterprise >
  4. Vyplníme všechna pole podle našeho příkladu (fáze 0):
    Serverový cluster 1C:Enterprise: 1CServer
    Název informační databáze v clusteru: testbd
    Zabezpečené připojení: Vypnutý
    Typ DBMS: PostgreSQL
    Databázový server: 1CServer
    Jméno databáze: testbd
    Uživatel databáze: postgres
    Uživatelské heslo: 1234
  5. Dále, dále. Vytvořenou databázi spustíme v podnikovém režimu – vše funguje!

Ještě jednou připomínáme, že PostgreSQL se dá docela dobře přetaktovat. Podrobnosti v.
A nezapomeňte na 1C!
Pokud jsou nějaké problémy s databází, možná vám to pomůže.
1C databáze jsou možné!

Máte ještě otázky?

Něco se pokazilo? Specialisté naší společnosti vám pomohou vyřešit všechny problémy, které mohou nastat! Kontaktujte nás! →

Lidé se neustále ptají na fórech na internetu:
-Jak nainstalovat 1C:Enterprise 8.1 (8.2) na PostgreSQL v operačním systému Windows
-Je možné nainstalovat současně dva procesy „1C:Enterprise Server Agent 8.1“ a „1C:Enterprise Server Server Agent 8.2“. Pokud ano, jak to udělat?
-Po instalaci 1C a PostgreSQL se zobrazí následující chyby:
A)



b) Chyba při vytváření infobáze:
Při provádění operace s infobází došlo k chybě.

c) Chyba při vytváření infobáze:
Při provádění operace s infobází došlo k chybě.


Pokud se potýkáte s takovými problémy a hledáte odpověď, pak je tento článek právě pro vás.

1. Instalace 1C:Enterprise 8.2

Spuštění instalace 1C:Enterprise 8.2.

Výběr komponent k instalaci; Kromě toho budeme potřebovat:
-Server 1C:Enterprise
-Správa serveru 1C:Enterprise

Výběr ruského jazyka

Dále je třeba vytvořit uživatele, jehož jménem bude služba Server Agent spuštěna. Zaškrtnutím políčka tedy nainstalujete server 1C: Enterprise jako službu Windows (doporučeno). A vytvoříme uživatele. I když zadáte existující a omylem nastavíte špatné heslo, služba se po instalaci jednoduše nespustí. A samotná instalace se dokončí správně, musíte kliknout na pokračovat v okně spouštění služby.

Zahájíme instalaci

Instalace bezpečnostního ovladače: Bezpečnostní ovladač musí být nainstalován na počítači, do kterého je vložen fyzický klíč. Nejčastěji je klíč nainstalován na serveru, my uděláme totéž a ponecháme zaškrtávací políčko výchozí instalace ovladače - nainstalovat.

Dokončujeme instalaci.

Najděte "1C: Enterprise Server Agent" a přejděte na vlastnosti:

A na záložce „přihlášení“ přepněte typ přihlášení na „se systémovým účtem“.

2. Instalace PostgreSQL pro 1C:Enterprise.

Spustíme instalaci PostgreSQL. Samotnou distribuční sadu je nutné stáhnout z oficiálních stránek 1C, protože již existuje verze nakonfigurovaná pro práci s 1C.

Spustíme instalaci, vybereme ruský jazyk a klikneme na další.

Volba komponent k instalaci je ponechána jako výchozí.

Inicializace clusteru.

Pokud je nutné, aby byl serverový agent sdílen se serverem SQL, zaškrtněte políčko pro podporu připojení z libovolné IP adresy, nejen z localhost.
POZORNOST! Nastavili jsme kódování: UTF-8 pro server i klienta.

Zde necháme vše jako výchozí a znovu klikneme na další.

Další moduly lze standardně ponechat, v případě potřeby můžete požadované označit.

Spuštění instalace PostgreSQL

Dokončujeme instalaci.

U služby PostgreSQL také většinou přepínám typ spouštění – se systémovým účtem.

3. Vytvoření informační základny na serveru pgsql a běžné chyby, které se v této fázi vyskytují.

Jdeme na 1C, přidáme novou databázi, řekneme, že databáze bude na serveru a uvedeme parametry serveru:

Pozornost. Databáze musí být vytvořena konkrétně z 1C, jinak pokud ji vytvoříte z PgMyAdmin, při pokusu o vstup do databáze se zobrazí chyby:

Chyba při vytváření infobáze:
Při provádění operace s infobází došlo k chybě.
Chyba DBMS: ERROR: jazyk "plpgsql" neexistuje.
TIP: pomocí CREATE LANGUAGE načtěte jazyk do databáze.

I když přejdete na pgMyAdmin a přidáte do databáze jazyk "plpgsql", objeví se následující chyba.

Chyba při vytváření infobáze:
Při provádění operace s infobází došlo k chybě.
Chyba DBMS: CHYBA: typ "mvarchar" na znaku 31 neexistuje

ŘEŠENÍ: Potřebujete vytvořit databázi z 1C.

Pokud jste při vytváření databáze z 1C: Enterprise obdrželi následující zprávu:

Při provádění operace s infobází došlo k chybě.
Chyba DBMS: ERROR: nové kódování (UTF8) není kompatibilní s kódováním databáze šablon (WIN1251).
TIP: Použijte stejné kódování jako v databázi šablon nebo jako šablonu použijte template0.

ŘEŠENÍ: Při instalaci PostgreSQL jste pro server nebo klienta ponechali jazyk Windows-1251, který je nainstalován ve výchozím nastavení, ale museli jste jej změnit na UTF-8

Přeinstalujte PostgreSQL a během instalace zadejte jazyk UTF-8.

4. Spuštění agenta serveru 1C:Enterprise 8.1 a

Serverový agent 1C:Enterprise 8.2 současně na jednom počítači.

S příchodem platformy 8.2 začalo mít mnoho lidí problém, když potřebovali, aby platforma 8.2 běžela na serveru, ale zároveň by chtěli zachovat 8.1.

Navrhuji jeden způsob instalace dvou serverových agentů pomocí rozdělení portů.

Nejprve nainstalujte Platform 8.1, jak je popsáno výše. Dále nainstalujte platformu 8.2. Nyní bychom měli mít v seznamu služeb zobrazeny 2 služby serverového agenta. Ale při spuštění druhé služby se zobrazí následující zpráva:

Služba „1C: Enterprise 8 Server Agent“ na „místním počítači“ byla spuštěna a poté zastavena. Některé služby se automaticky zastaví, pokud je nepoužívají jiné služby nebo programy.

K tomu dochází v důsledku skutečnosti, že se systém pokouší spustit současně 2 pracovní procesy, které pracují na stejném portu.

Abychom se z této situace dostali, změňme port, například Server Agent 8.1.
Chcete-li to provést, musíte zastavit službu 1C:Enterprise 8.2 Server Agent.
Spusťte 1C:Enterprise Server Agent 8.1.

Větev registru: HKLM\SYSTEM\ControlSet001\services\1C:Enterprise 8.1 Server Agent
Parmert: ImagePath
Hodnota: "C:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -rozsah 1660:1691 -d "C:\Program Files\1cv81\server"

Po této změně bychom měli mít současně spuštěné 2 1C Server Agenty: Enterprise 8. Podle toho je spustíme.

Nyní musíme přidat nový serverový cluster. Vše děláme v provozuschopném stavu:

Pokud nemáme centrální server 8.1, přidejte jej, ale s portem 1640:

Přidejte serverový cluster, změňte port na 1641:

Nyní bude náš cluster 8.1 fungovat přes port 1640 a pro 8.2 přes 1540 (výchozí port):

Přidání pracovního postupu 8.1. porty se podle toho také změní na 16xx

Spustíme proces, nezapomeňte zaškrtnout políčko - proces je povolen.

Nyní by nám mělo vše fungovat.

Poslední věc, kterou je třeba říci: při vytváření databáze na 8.1 je třeba zadat port, protože jinak bude použit výchozí port (1541) a program bude psát o nekompatibilitě verze platformy.