A program feladata
A Cobra.Db.Console.exe parancssori segédprogram CobraConto adatbázisok üzemeltetési műveleteire készült. A program SQL Serverhez csatlakozik, majd a megadott parancs alapján adatbázist hoz létre, klónoz, töröl vagy frissít a CobraConto alkalmazás által elvárt aktuális adatbázis-revízióra.
A program tipikus felhasználási esetei:
- új teszt- vagy demo CobraConto adatbázis létrehozása;
- éles adatbázis másolása teszteléshez ugyanazon az SQL Server példányon;
- már nem szükséges adatbázis törlése;
- létező CobraConto adatbázis frissítése az alkalmazás aktuális revíziójára.
Futtatási feltételek
- Windows környezet és .NET Framework 4.8 futtatókörnyezet szükséges.
- A cél SQL Servernek elérhetőnek kell lennie a futtató gépből.
- A használt SQL Server verziót a program ellenőrzi a CobraConto minimális követelménye szerint.
- A futtató felhasználónak vagy a megadott SQL felhasználónak rendelkeznie kell az adott művelethez szükséges SQL jogosultságokkal.
- A klónozásnál a fájlrendszeri műveleteket az SQL Server szolgáltatásfiókja végzi, ezért a mentést és visszaállítást az SQL Server gépen értelmezett útvonalak és jogosultságok befolyásolják.
Általános használat
Cobra.Db.Console.exe <parancs> [parameterek]
Elérhető parancsok:
create: új CobraConto adatbázis létrehozása a legújabb revízióval.clone: CobraConto adatbázis klónozása ugyanazon az SQL Server példányon.drop: adatbázis törlése.update: CobraConto adatbázis frissítése a legújabb revízióra.help: Általános vagy parancsspecifikus súgó megjelenítése.
Súgó megjelenítése:
Cobra.Db.Console.exe --help
Cobra.Db.Console.exe help create
Cobra.Db.Console.exe clone --help
Kapcsolódás és hitelesítés
A parancsok első két vagy három paramétere mindig az SQL Server és az adatbázis neve. Ha nem ad meg SQL felhasználót, a program Windows-hitelesítést használ.
Windows-hitelesítés:
Cobra.Db.Console.exe update SQLSERVER ADATBAZIS
SQL Server-hitelesítés:
Cobra.Db.Console.exe update SQLSERVER ADATBAZIS FELHASZNALO JELSZO
A ccnuser felhasználónév a Cobra beépített adatbázis-felhasználós hitelesítését választja. Más SQL felhasználó esetén a jelszót a Cobra ConnectionManager által várt kódolt formában kell megadni.
Ha egy pozicionális érték -- karakterekkel kezdődik, a kapcsolók végét jelző -- elválasztó használható:
Cobra.Db.Console.exe update SQLSERVER ADATBAZIS FELHASZNALO -- --JELSZO
Új adatbázis létrehozása
Szintaxis:
Cobra.Db.Console.exe create <sqlServer> <sqlDatabase> [sqlUser] [sqlPassword] [--firmName <nev>] [--force]
Példa Windows-hitelesítéssel:
Cobra.Db.Console.exe create localhost COBRA_DEMO --firmName "Minta Kft."
A create parancs:
- a
masteradatbázishoz csatlakozik; - ellenőrzi az SQL Server verziót;
- létrehozza a megadott CobraConto adatbázist;
- a cégnevet a
--firmNamekapcsolóból veszi, ennek hiányában az adatbázis neve lesz az alapértelmezett cégnév; - az adatbázist a programban elvárt legújabb revízióra állítja.
Ha a céladatbázis már létezik, a parancs alapértelmezetten hibát ad. A --force kapcsoló engedélyezi a létező céladatbázis felülírását.
Cobra.Db.Console.exe create localhost COBRA_DEMO --force
--force kapcsoló a céladatbázis teljes tartalmát törölheti.Adatbázis klónozása
Szintaxis:
Cobra.Db.Console.exe clone <sqlServer> <forrasSqlDatabase> <celSqlDatabase> [sqlUser] [sqlPassword] [--force]
Példa:
Cobra.Db.Console.exe clone localhost COBRA_ELES COBRA_TESZT
A clone parancs:
- a
masteradatbázishoz csatlakozik; - ellenőrzi az SQL Server verziót;
- ellenőrzi, hogy a forrásadatbázis létezik és online állapotban van;
- ellenőrzi, hogy a forrás CobraConto adatbázis-e, vagyis tartalmaz adatbázis-revíziót;
- elutasítja, ha a forrás és a cél adatbázis neve azonos;
- teljes adatbázis-másolást végez SQL Server mentéssel és visszaállítással;
- siker esetén kiírja a megőrzött mentési fájl útvonalát.
Ha a céladatbázis már létezik, a parancs alapértelmezetten hibát ad. A --force kapcsoló engedélyezi a létező céladatbázis lecserélését.
Cobra.Db.Console.exe clone localhost COBRA_ELES COBRA_TESZT --force
--force kapcsoló a céladatbázis korábbi teljes tartalmát törli.Adatbázis törlése
Szintaxis:
Cobra.Db.Console.exe drop <sqlServer> <sqlDatabase> [sqlUser] [sqlPassword] [--force]
Példa:
Cobra.Db.Console.exe drop localhost COBRA_DEMO
A drop parancs:
- a
masteradatbázishoz csatlakozik; - ellenőrzi, hogy a megadott adatbázis létezik;
- törli a megadott adatbázist.
Ha aktív kapcsolatok vannak az adatbázison, a törlés sikertelen lehet. A --force kapcsoló az aktív kapcsolatok megszakításával próbálja törölni az adatbázist.
Cobra.Db.Console.exe drop localhost COBRA_DEMO --force
drop parancs visszavonhatatlanul törli az adatbázis teljes tartalmát.Adatbázis frissítése
Szintaxis:
Cobra.Db.Console.exe update <sqlServer> <sqlDatabase> [sqlUser] [sqlPassword]
Példa:
Cobra.Db.Console.exe update localhost COBRA_DEMO
Az update parancs:
- közvetlenül a megadott adatbázishoz csatlakozik;
- ellenőrzi az SQL Server verziót;
- kiírja az aktuális és az elvárt CobraConto adatbázis-revíziót;
- csak akkor futtat frissítést, ha az aktuális revízió kisebb az elvárt revíziónál;
- a hiányzó revíziókat sorrendben alkalmazza.
Ha az adatbázis már naprakész vagy újabb revízión áll, a program nem végez módosítást, és sikeres kilépési kóddal fejeződik be.
Jogosultságok
A szükséges jogosultságok a választott művelettől függnek.
create: adatbázis létrehozása, objektumok létrehozása és revíziók futtatása.clone: forrásadatbázis mentése, céladatbázis visszaállítása, adat- és naplófájlok létrehozása.drop: adatbázis törlése, szükség esetén aktív kapcsolatok megszakítása.update: séma- és adatmódosítások végrehajtása a céladatbázisban.
Rendszergazdai vagy adatbázis-adminisztrátori futtatás előtt mindig ellenőrizze, hogy a megadott adatbázisnév a megfelelő környezetre mutat-e.
Naplózás és hibakezelés
A program a konzolra írja a művelet állapotát. A naplóbejegyzések tartalmazzák az eltelt időt, a naplószintet, a művelet megnevezését és az üzenetet.
Sikeres futás esetén a program információs üzenetet ír ki. Hiba esetén a részletes kivételszöveg megjelenik a konzolon.
Kilépési kódok:
0: sikeres végrehajtás vagy kifejezetten kért súgó.-1: hibás paraméterezés, sikertelen ellenőrzés vagy végrehajtási hiba.
Biztonságos használat
- Éles adatbázison
drop,create --forcevagyclone --forcefuttatása előtt készítsen külön mentést. - Klónozás előtt győződjön meg róla, hogy a céladatbázis neve nem éles adatbázisra mutat.
- Automatizált szkriptben kezelje a
-1kilépési kódot hibaként. - Jelszavát ne adja meg naplózott vagy megosztott parancssori környezetben, ha ez elkerülhető.
- A parancs futtatása után ellenőrizze a konzolkimenetet, különösen a forrás, cél és hitelesítési sorokat.
Gyors példák
Új demo adatbázis létrehozása:
Cobra.Db.Console.exe create localhost COBRA_DEMO --firmName "Demo ceg"
Demo adatbázis újra létrehozása felülírással:
Cobra.Db.Console.exe create localhost COBRA_DEMO --force
Éles adatbázis tesztmásolatának készítése:
Cobra.Db.Console.exe clone SQL01 COBRA_ELES COBRA_TESZT
Tesztadatbázis frissítése:
Cobra.Db.Console.exe update SQL01 COBRA_TESZT
Tesztadatbázis törlése aktív kapcsolatok megszakításával:
Cobra.Db.Console.exe drop SQL01 COBRA_TESZT --force