Namai Gėlės Duomenų bazių valdymo sistema IBM DB2. Pažiūrėkite, kas yra „IBM DB2“ kituose žodynuose

Duomenų bazių valdymo sistema IBM DB2. Pažiūrėkite, kas yra „IBM DB2“ kituose žodynuose

    Enterprise Edition – tai sprendimas didelėms organizacijoms, kurioms reikalingas patikimas operacijų apdorojimas ir platus funkcionalumas;

    Advanced Edition – ši versija palaiko neribotus ryšius, klasterizavimą ir suteikia mastelį, leidžiantį pasiekti aukštą našumą (versija nepateikia dviejų fazių operacijų patvirtinimo ir automatinio perjungimo);

    Small Business Edition – versija skirta palaikyti interneto programas. Didžiausias leistinas IIOP / CORBA jungčių skaičius yra dešimt, tinka organizacijoms, kurių sistemoms nereikia grupavimo, palaikymo darbui su pagrindiniais kompiuteriais, dviejų fazių transakcijų patvirtinimo ir automatinio perjungimo;

    „Developer Edition“ yra visiškai funkcionali parinktis kūrėjams, kuriantiems ir testuojantiems programas naudojant „Sybase EAServer“, tačiau apribota iki penkių IIOP jungčių.

„Sybase EAServer“ suteikia daug svarbių pranašumų, įskaitant:

    patikimas sistemos veikimas, užtikrinant automatinį našumo atkūrimą serverio atminties lygyje, apkrovos balansavimą ir klasterizavimą;

    investicijų apsauga integruojant su esamomis vidinėmis sistemomis;

    Supaprastintas valdymas naudojant išsamias tinkinimo ir administravimo galimybes, pvz., komponentų egzempliorių talpyklą, operacijų valdymą, procesų talpyklą ir grafinių komponentų nustatymus.

Subd db2

IBM DB2 DBVS pirmą kartą pasirodė devintojo dešimtmečio pradžioje. Šio produkto versijos šiuo metu veikia AS / 400AIX, S / 390, Windows, OS / 2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q ir Sun Solaris.

DB2 Enterprise Server Edition pateikiamas su gausiu administravimo įrankių rinkiniu. DB2 duomenų prieigos mechanizmai palaiko ODBC, JDBC ir ADO / OLE DB tvarkykles, o „Microsoft Visual Studio“ vartotojams yra prieinami papildiniai moduliai, tokie kaip „Stored Procedure Builder“. „Windows“ DB2 versijos taip pat leidžia kurti saugomas procedūras „Visual Basic“. „Borland Development Tools“ palaiko DB2 prieigą ne tik per ADO / OLE DB ir ODBC, bet ir per savo bendruosius duomenų prieigos mechanizmus – „Borland Database Engine“ ir „dbExpress“.

DB2 DBVS palaiko duomenų saugyklų kūrimą ir, be duomenų perdavimo į sandėlį priemonių, yra duomenų saugyklos centras, kuris yra kliento dalies dalis, leidžiantis valdyti visus procesus, susijusius su duomenų saugyklų kūrimu ir priežiūra. , įskaitant sandėlio schemos kūrimą, šaltinių duomenų šaltinių nustatymą, duomenų saugykloje atnaujinimo tvarkaraščių sudarymą, neteisingų duomenų tikrinimą ir taisymą. Kad palaikytų OLAP saugyklą, DB2 Universal Database Server apima OLAP Starter Kit, pagrįstą Hyperion Essbase OLAP Server.

DB2 DBVS palaiko XML dokumentų saugojimą ir paiešką pagal jų elementus ir atributus. SOAP gali būti naudojamas norint pasiekti žiniatinklio paslaugas, kurios suteikia prieigą prie DB2 saugomų procedūrų ir duomenų (žiniatinklio paslaugas valdo IBM WebSphere taikomųjų programų serveris).

Pagrindinės DB2 universaliosios duomenų bazės techninės savybės apima reliacinių ir sudėtingų duomenų palaikymą naudojant objektų plėtinius, kelių procesorių platformos palaikymą, klasterių palaikymą, 64 bitų atminties architektūrą, užklausų lygiagretumą, nevienalyčių duomenų administravimo ir apdorojimo galimybes bei paskirstytų operacijų palaikymą.

DB2 DBVS yra vienintelė DBVS, kurią galite kurti .Net, ir tuo pačiu metu ji gali veikti bet kurioje platformoje, įskaitant Linux, pagrindinius kompiuterius, Windows. DB2 turi Java saugomas procedūras.

Išplėstinis „Visual Studio“ palaikymas apima žiniatinklio paslaugų palaikymą, visišką XML duomenų saugojimo jų nekeičiant palaikymą ir galimybę kurti programas ir svetaines neįrašant kodo.

DB2 sukurta remiantis reliacinėmis technologijomis su patobulintu XML palaikymu, siekiant supaprastinti duomenų kūrimą ir integravimą. XML yra pagrindinis DB2 metaduomenų generavimo ir metaduomenų valdymo įrankių komponentas.

DB2 9 versija suteikia pureXML technologiją, revoliucinę Venom duomenų glaudinimo technologiją ir savarankiškas duomenų valdymo galimybes. DB2 suteikia prieigą prie informacijos, saugomos Oracle ir MySQL duomenų bazėse.

Įgyvendinta m DBVS Patobulinimai leidžia kūrėjams žymiai supaprastinti ir pagreitinti programų, kurios vienu metu dirba su XML ir reliacinių duomenų saugyklomis, kūrimą. Pavyzdžiui, pureXML technologija palaiko XQuery – standartą, specialiai sukurtą XML duomenims apdoroti. Programų kūrėjai gali naudoti XQuery, XPath, Standard SQL arba visas tris, kad gautų reliacinius arba XML duomenis.

Išsami kūrimo aplinka DB2 Developer Workbench leidžia kurti, redaguoti, derinti, testuoti ir įdiegti saugomas procedūras ir vartotojo nustatytas funkcijas. Developer Workbench galima naudoti kuriant programas ir kuriant, redaguojant ir vykdant SQL sakinius bei XML užklausas.

DB2 9 versijos duomenų bazės serveris leidžia sklandžiai, lygiagrečiai perkelti reliacinius ir XML duomenis, neatsižvelgiant į formatą, platformą ar vietą ( http://www-306.ibm.com/software/data/db2/v9/).

DB2 taip pat suglaudina indeksus ir laikinąsias lenteles, ko šiandien negali padaryti jokia kita DBVS. Gedimams atsparios dviejų serverių konfigūracijos įdiegimas, kai ataskaitoms generuoti galima naudoti serverį su atsargine duomenų baze.

DB2 galima įsigyti dviem leidimais: DB2 Workgroup ir DB2 Enterprise Edition. DBVS įgyvendina užklausų apdorojimo lygiagretinimą, visą replikavimo įrankių rinkinį, užklausų suvestines lenteles, kad pagerintų duomenų bazės našumą, objektinės duomenų bazės projektavimo galimybes ir Java kalbos įrankius.

DB2 yra pilnas daugialypės terpės plėtinių rinkinys, skirtas saugoti ir valdyti tekstą, garsą, vaizdo įrašus, vaizdus ir geografinius duomenis. Pagrindinis DB2 trūkumas yra santykinis administravimo sudėtingumas.

DB2 DBVS, naudodamiesi „Index Smart Guide“, galite sureguliuoti, sudarydami optimalius indeksus tam tikram skambučių skaičiui, kuris apibūdina tipišką duomenų bazės apkrovą. DB2 gali generuoti suvestines lenteles, o tai labai pagerina jos, kaip duomenų saugyklos, efektyvumą. Suvestinė lentelė yra laikina darbo sritis, kurią DBVS naudoja atsakymams į dažnai gaunamas užklausas saugoti.

DB2 Spatial plėtinys darbui su erdviniais duomenimis buvo sukurtas bendradarbiaujant su ESRI [ http://www.esri.com/partners/alliances/ibm/solutions.html,http://www.esri.com/partners/alliances/ibm/index.html].

IBM vienu metu išleidžia tris DB2 leidimus – verslo klientams, mažoms ir vidutinėms įmonėms (DB2 Express) ir kūrėjams (DB2 Express-C).

IBM turi supaprastintą DBVS versiją DB2 Express-C, jis yra santykinis, bet palaiko XML.

Informix DBVS

Prieš įsigyjant IBM, „Informix“ pavyzdinis produktas buvo „Informix Dynamic Server“ (IDS), kuris palaiko UNIX ir Windows platformas ir užtikrina efektyvų veikimą tiek vieno, tiek kelių procesorių sistemose ir grupėse. Šis produktas turi galingas lygiagretaus apdorojimo galimybes. Tarp pagrindinių Informix Dynamic Server savybių reikėtų pažymėti vietos diske valdymą kaip OS įrankį; ir savo funkcijas, skirtas apeiti OS apribojimus, dalijimosi atmintimi valdymą; dinaminis srauto valdymas; palaikymas lentelių ir indeksų suskaidymui keliuose diskuose; užklausų lygiagretinimas; duomenų atspindėjimas. IDS serveris palaiko dviejų fazių operacijų užbaigimą, taip pat nevienalytes operacijas (tokiu atveju kiti serveriai gali dalyvauti operacijose). Ypatingas dėmesys skiriamas serverio laiko eilučių palaikymui.

Serverio funkcionalumo plėtiniai įgyvendinami remiantis DataBlade – duomenų bazės objektų ir C kalbos paprogramių rinkiniais, kurie yra prijungti prie duomenų bazės ir kuriuos gamina tiek duomenų bazės gamintojas, tiek daugelis trečiųjų šalių tiekėjų.

Iš duomenų prieigos mechanizmų IDS palaiko ODBC, JDBC ir ADO / OLE DB tvarkykles. Borland kūrimo įrankiai palaiko IDS prieigą naudodami Borland Database Engine, dbExpress, Microsoft .NET.

Pastaruoju metu buvo pereita nuo reliacinės DBVS prie objektinės. Informix, vadovaudamasi šia koncepcija, pristato savo sprendimą Centaur DBVS, paremtą Informix Dynamic Server 7.3 reliacine duomenų baze ir Informix Universal Data Option objektų reliacine duomenų baze ir apjungia aukštą dinaminio serverio našumą dirbant su duomenimis su universalumu ir universalumu. Universal Data Option daugialypės terpės funkcijos. Šis įgyvendinimas skirtas interneto sistemoms kurti. DBVS turi lanksčią kūrimo aplinką, mastelio keitimą, atitinkantį intensyvų internetui būdingą darbo krūvį, ir įrankius, skirtus darbui su naujo tipo duomenimis, kurie, tobulėjant žiniatinkliui, buvo pradėti naudoti visur. Šioje sistemoje įdiegti „Java“ įrankiai leis kūrėjams šia kalba kurti saugomas procedūras, pasirinktines programas ir „DataBlades“ komponentus.

„Centaur“ turi įmontuotą „ActiveX“ tvarkymą. Tai leidžia sukurti duomenų bazėje saugomas procedūras Visual Basic.

„Centaur“ yra „Informix Dynamic Server“ priedas ir veikia su tradiciniu šio paketo duomenų bazės formatu, kad vartotojai išliktų savo žinioje visomis senomis funkcijomis, o sistemos atnaujinimas iki naujų versijų lygio nebus sunkus. Sistema aprūpinta objektinio duomenų bazių projektavimo, specializuotų lentelių kūrimo ir indeksavimo programomis priemonėmis; leidžia vartotojams kurti savo funkcijas į užklausas ir nepasikliauti vien standartiniais SQL įrankiais.

Darbe kurį laiką teko susidurti su IBM DB2 DBVS. Nes Kadangi sistema yra komercinė, informacijos internete rusų kalba nėra daug, todėl nusprendžiau aprašyti kai kurias šios DBVS veikimo ypatybes.

Įėjimo taškas

Pradėkime nuo įėjimo į DBVS taško. SQL SERVER galutinis taškas yra egzempliorius, kuris, žinoma, gali turėti atskiras duomenų bazes, tačiau konfigūracijos ir saugos modelis yra vienodi visam egzemplioriui. DB2 įvesties taškas atrodo taip – ​​egzempliorius (kuris atitinka konkretų prievadą) – duomenų bazė. Tuo pačiu metu yra viso egzemplioriaus ir atskiros duomenų bazės konfigūracija.

Egzempliorių konfigūraciją galite peržiūrėti naudodami komandą db2:

Duomenų bazės tvarkyklės konfigūracija

Mazgo tipas = Enterprise Server Edition su vietiniais ir nuotoliniais klientais

Duomenų bazės tvarkyklės konfigūracijos išleidimo lygis = 0x0b00

CPU greitis (miliseek. / instrukcija) (CPUSPEED) = 2.912790e-07
Ryšio pralaidumas (MB / sek) (COMM_BANDWIDTH) = 1,000000e + 02

Maksimalus vienu metu aktyvių duomenų bazių skaičius (NUMDB) = 8
Federacinės duomenų bazės sistemos palaikymas (FEDERATED) = TAIP
Operacijų procesoriaus stebėjimo pavadinimas (TP_MON_NAME) =

Numatytoji apmokestinimo sąskaita (DFT_ACCOUNT_STR) =

„Java Development Kit“ diegimo kelias (JDK_PATH) = / home / db2inst1 / sqllib / java / jdk32

Diagnostikos klaidų fiksavimo lygis (DIAGLEVEL) = 3
Pranešimo lygis (NOTIFYLEVEL) = 3
Diagnostikos duomenų katalogo kelias (DIAGPATH) = / home / db2inst1 / sqllib / db2dump

Numatytieji duomenų bazės monitoriaus jungikliai
Buferio telkinys (DFT_MON_BUFPOOL) = IŠJUNGTA

Kur bus nurodyti parametrai, jų reikšmė ir dekodavimas. Taip pat galima sutrumpinta versija:

gauti dbm cfg

Arba naudodamiesi užklausa:

Pasirinkite pavadinimą, reikšmę iš sysibmadm.dbmcfg

Iš svarbių parametrų galima paminėti:

  • autentifikavimo tipas (AUTHENTICATION)
  • numatytasis naujų duomenų bazių kūrimo kelias (DFTDBPATH)
  • serverio aptikimas tinkle (DISCOVER)
Konkrečios bazės nustatymus galite peržiūrėti taip:

prisijungti prie pavyzdžio(pavyzdys – duomenų bazės pavadinimas)

gauti duomenų bazės tvarkyklės konfigūraciją

Arba su maždaug ta pačia užklausa kaip ir anksčiau:

pasirinkite pavadinimą, reikšmę iš sysibmadm.dbcfg

Autentifikavimas

Didelis skirtumas tarp DB2 ir kitų DBVS yra autentifikavimo modelis. Čia nėra vidinių vartotojų, kaip SQL Server ar MySQL. Visas autentifikavimas atliekamas naudojant išorines DBVS priemones (dinamiškai įkeliami papildiniai) – naudojant operacinę sistemą arba išorinius įskiepius (Kerberos, GSS API). Autentifikavimo tipas nustatomas duomenų bazės tvarkyklės konfigūracijos parametre AUTHENTICATION. Pagal numatytuosius nustatymus nustatyta reikšmė SERVER – vartotojo vardas ir slaptažodis perduodami aiškiu tekstu, o šios poros teisingumas patikrinamas operacinės sistemos pagalba. Jei vartotojo vardas ir slaptažodis yra teisingi, vartotojas arba grupės, kurioms jis priklauso (įskaitant specialią grupę VIEŠAI, kuri apima visus įgaliotus vartotojus), yra tikrinama, ar nėra PRISIJUNGIMO privilegija. Šias teises galima peržiūrėti lentelėje SYSCAT.DBAUTH:

pasirinkite GRANTEE iš SYSCAT.DBAUTH, kur CONNECTAUTH = "Y"

Didelė klaida konfigūruojant yra įgalinti KLIENTO autentifikavimo tipą. Tokiu atveju DB2 pasitiki prisijungimo kliento autentifikavimu, o jei PUBLIKAS turi CONNECT privilegiją, bet kuris vartotojas gali prisijungti prie duomenų bazės ir gauti prieigą prie visų duomenų, kuriuos turi PUBLIC. Vartotojo vardas paimtas iš operacinės sistemos. Tai yra, jei administratoriaus vartotojas prisijungs per „Data Studio“, bus suteiktos visos šio vartotojo turimos privilegijos. Ir šiuo atveju nėra skirtumo, iš kurio kompiuterio buvo prieiga. Šio tipo autentifikavimą rekomenduojama įjungti tik tada, kai tarp serverio ir kliento yra saugus kanalas, o kiti klientai negali prisijungti prie DBVS.

Autorizacija

Konkrečios egzemplioriaus privilegijos nurodytos duomenų bazės tvarkyklės konfigūracijoje. Tai yra šios privilegijos:

  • SYSADM
  • SYSCTRL
  • SYSMAINT
  • SYSMON
Šios privilegijos nustatomos nurodant grupę, į kurią bus įtrauktas vartotojas. Programoje dbmcfg tai yra atitinkamai parametrai SYSADM_GROUP, SYSCTRL_GROUP, SYSMAINT_GROUP ir SYSMON_GROUP.

Toliau yra konkrečios duomenų bazės privilegijos. Tai tokios privilegijos kaip prieiga prie duomenų bazės (CONNECTAUTH), lentelių kūrimas (CREATETABAUTH), paprogramės kūrimas (EXTERNALROUTINEAUTH) ir kt. Šias teises galima peržiūrėti SYSCAT.DBAUTH rodinyje

Ir galiausiai privilegijos prieiti prie konkrečių duomenų – lentelių, paprogramių ir kt. Viskas čia yra gana nereikšminga, bet ir su tam tikrais ypatumais.

Prieigos prie stalo privilegijas galite peržiūrėti SYSCAT.TABAUTH rodinyje. Suteiktos privilegijos tipas saugomas atskiruose stulpeliuose, priklausomai nuo pačios privilegijos (SELECTAUTH, DELETEAUTH ir kt.). Suteikiant privilegiją naudojant komandą GRANT, teisėse REFERENCES ir UPDATE taip pat galima nurodyti stulpelių, kuriems bus taikomos privilegijos, pavadinimus. Tokiu atveju informaciją apie tai galima peržiūrėti SYSCAT.COLAUTH rodinyje

Paprogramių privilegijas (funkcijas, procedūras ir metodus) galima peržiūrėti SYSCAT.ROUTINEAUTH. Čia ne viskas yra nereikšminga, priklausomai nuo laukų SPECIFICNAME ir TYPENAME, privilegijos gali būti suteiktos visoms nurodytos schemos paprogramėms.

Jei skaitytojams straipsnis patiks, esu pasiruošęs papasakoti apie duomenų apsaugą DB2 naudojant etiketėmis pagrįstą prieigos valdymą.

Įvadas

Bendrosios inžinerinės praktikos tikslas – įtvirtinti ir plėsti studento studijų metu įgytas žinias, įgyti idėją apie būsimą profesiją. Praktikos tikslai: - dalykų bloko disciplinų paskaitose pateiktos teorinės medžiagos įtvirtinimas;

Kompiuterinių įgūdžių įgijimas, su Windows OS ir standartiniu biuro paketu;

Informatikos bazinių kursų apie klasikinių algoritmų naudojimo, kūrimo ir diegimo metodus studijuojamomis programavimo kalbomis metu įgytų žinių ir įgūdžių įtvirtinimas;

Įvaldyti profesionalios informacijos paieškos internete metodus;

Išstudijuoti ataskaitų projektavimo reikalavimus, metodus ir taikymo aplinkas ataskaitoms apie praktikos rezultatus rengti;

Darbas su biuro technika.

Pirmoje ataskaitos dalyje nagrinėjama IBM DB2 duomenų bazių valdymo sistema: aprašoma DBVS samprata, pateikiami IBM DB2 DBVS tipai ir trumpas aprašymas.

Antroje ataskaitos dalyje sukurtas algoritmas ir C programa, leidžianti rasti maksimalų masyvo A elementą masyve B.

IBM DB2 duomenų bazių valdymo sistema

Duomenų bazių valdymo sistemos koncepcija

Duomenų bazė (DB) yra pavadintas tarpusavyje susijusių duomenų rinkinys, kurį valdo DBVS.

Duomenų bazių valdymo sistema (DBVS) – bendrosios ar specialiosios paskirties programinės įrangos ir kalbinių priemonių rinkinys, užtikrinantis duomenų bazių kūrimo ir naudojimo valdymą.

DBVS sukūrimo istorija

Energinga veikla ieškant priimtinų būdų socializuoti nuolat augančią informacijos apimtį paskatino šeštojo dešimtmečio pradžioje sukurti specialias programinės įrangos sistemas, pavadintas „Duomenų bazių valdymo sistemomis“ (DBVS).

Pagrindinis DBVS bruožas yra procedūrų buvimas ne tik pačių duomenų įvedimui ir saugojimui, bet ir jų struktūros aprašymams. Failai, pateikiami su juose saugomų ir DBVS valdomų duomenų aprašymu, pradėti vadinti duomenų bankais, o vėliau – „duomenų bazėmis“ (DB).

Kai buvo pradėti gaminti ES EVM šeimos kompiuteriai. Darbai buvo vykdomi dviem kryptimis. Visų pirma, buvo bandoma sukurti savo originalias vidaus DBVS. Tuo pačiu metu pagreitintu režimu buvo sukurti kai kurių užsienyje plačiai paplitusių DBVS analogai, galintys veikti vidaus aparatinės ir programinės įrangos platformose. Panašus požiūris buvo taikomas ir kuriant DBVS aparatinės įrangos platformoms, kurios serijinė gamyba šalyje pradėta jau pasirodžius ES kompiuterių platformai – SM kompiuteriams, ASVT, su IBM suderinamiems asmeniniams kompiuteriams ir kt.

IBM DB2 duomenų bazės sukūrimo istorija

DB2 yra reliacinių duomenų bazių valdymo sistemų šeima, kurią gamina IBM Corporation. Tai viena iš „subrendusių“ pasaulio DBVS, nuolatinis našumo lyderis, atsižvelgiant į techninį įgyvendinimą, mastelį ir kt.

DB2 turi ilgą istoriją. Tai pirmoji DBVS, kurioje naudojama SQL. 1975–1982 metais IBM buvo sukurtas DB2 prototipas, vadinamas System Relational arba System R.

DB2 gavo savo pavadinimą 1982 m., kai buvo išleista pirmoji komercinė VM versija, pavadinta SQL / DS, o vėliau - MVS leidimas, pavadintas DB2.

DB2 kūrimas prasidėjo aštuntojo dešimtmečio pradžioje, kai Dr. E.F. Coddas, dirbęs IBM, sukūrė reliacinių duomenų bazių teoriją ir 1970 m. birželį paskelbė duomenų manipuliavimo modelį. Norėdamas įgyvendinti šį modelį, jis sukūrė reliacinės duomenų bazės kalbą, pavadintą Alpha.

IBM DB2 yra efektyviausia ir galingiausia duomenų bazių valdymo sistema pasaulyje. Pagrindinis unikalus jos pranašumas yra tas, kad bet kuri programa, sukurta DB2, veiks su DB2 duomenų serveriais, veikiančiais bet kurioje paskirstytoje platformoje, kurią palaiko DB2 (Windows, HP-UX, Sun Solaris, Linux, Mac OS X ir AIX®).

DB2 yra įvairių leidimų ir paketų. Visi DB2 leidimai ir paketai sukurti iš tos pačios šaltinio kodo bazės; jie skiriasi tik funkcionalumu ir licencijavimo sąlygomis, kurios yra skirtos DB2 galimybėms, ypatybėms ir pranašumams atitinkamiems rinkos segmentams ir kainų grupėms.

Užduočių, kurias galima išspręsti naudojant DB2 objektų plėtinius, diapazonas žymiai padidėja, palyginti su klasikiniu reliaciniu metodu. Iš objektinio modelio pasiskolinęs šiuolaikinėms programoms reikalingiausius elementus, DB2 išlaikė visus reliacinės duomenų bazių valdymo sistemos privalumus. Tai leidžia naudoti tiek reliacinius, tiek objektinius metodus kuriant įmonės informacines sistemas jo pagrindu.

IBM DB2 duomenų bazių valdymo sistema pradėta kurti tolimame aštuntajame dešimtmetyje ir dabar užima tvirtą poziciją įmonių DBVS rinkoje, tenkindama aukštus našumo, patikimumo, saugumo ir mastelio reikalavimus.

Igoris Bulatenko, informacijos saugos specialistas, pozityviosios technologijos

IBM DB2 duomenų bazių valdymo sistema pradėta kurti tolimame aštuntajame dešimtmetyje ir dabar užima tvirtą poziciją įmonių DBVS rinkoje, tenkindama aukštus našumo, patikimumo, saugumo ir mastelio reikalavimus. Privačiame sektoriuje DB2 nebuvo plačiai pritaikytas, nepaisant to, kad yra nemokama IBM DB2 Express versija. Galbūt todėl internete nėra daug straipsnių apie DB2 nustatymą ir naudojimą.

DB2 saugos modelis turi platų funkcionalumą ir leidžia apsaugoti duomenis tiek nuo išorinių poveikių, tiek atskirti vidinių vartotojų prieigos teises naudojant pačią DBVS.

Tačiau nepasiruošusiam vartotojui sunku suprasti visą šią įvairovę nuo nulio, todėl kai kurie svarbūs aspektai bus aptarti šiame straipsnyje.

Įėjimo taškas

Įvesties taškas į DB2 atrodo taip: DBVS -> egzempliorius, kuris gali būti susietas su tam tikru prievadu -> konkretus duomenų bazės pavadinimas. Saugos parametrus galima keisti tiek konkrečiame egzemplioriuje, tiek konkrečioje duomenų bazėje.

Autentifikavimas

Autentifikavimas yra pagrindinis saugos mechanizmas, kuris taikomas bandant prisijungti prie DB2 serverio. Autentifikavimas patikrina pateiktų kredencialų teisingumą. Pagrindinė DB2 savybė yra ta, kad vartotojo autentifikavimą atlieka tik išoriniai papildiniai. Vidiniai vartotojai, skirtingai nei Oracle ar MS SQL Server, čia neegzistuoja. Net „IBM Data Studio“ pasiekiama vartotojo kūrimo funkcija iš tikrųjų nesukuria vartotojo, bet suteikia nurodytam vartotojui teisę prisijungti prie duomenų bazės.

Yra keletas autentifikavimo parinkčių, norima parinktis valdoma duomenų bazės tvarkyklėje esančiu parametru AUTHENTICATION. Šio parametro reikšmė turi įtakos, kur bus atliktas kliento autentifikavimas (serverio ar kliento pusėje) ir ar duomenys bus perduodami šifruota forma (reikšmės su pabaiga _ENCRYPT). Palaikomos šio parametro reikšmės pateikiamos šiuo adresu:

Duomenų bazių tvarkyklės konfigūraciją galite peržiūrėti pateikę užklausą lentelėje sysibmadm.dbmcfg, tačiau tam reikia prieigos prie bet kurios iš duomenų bazių, o tai ne visada įmanoma. Jei turite vietinę prieigą prie serverio, galite atidaryti komandų eilutės procesorių (db2 arba db2.exe sistemoje Windows), prisijungti prie egzemplioriaus ir paleisti šias komandas:

Db2 => pridėti prie db2inst1
db2 => gauti duomenų bazės tvarkyklės konfigūraciją

Numatytoji parametro AUTHENTICATION reikšmė yra SERVER. Pateiktų vartotojo kredencialų patvirtinimas atliekamas serverio pusėje naudojant operacinę sistemą, tačiau visi duomenys perduodami aiškiu tekstu ir gali būti perimti užpuoliko.

Pažiūrėkime, kaip atrodo perimta informacija Wireshark.


Vartotojo vardas ir slaptažodis, perduotas iš kliento, matomi pakete žiūrint EBCDIC.

Keičiant autentifikavimo tipą į SERVER_ENCRYPT, prisijungimo vardas ir slaptažodis bus perduodami užšifruota forma ir tikrinami serverio pusėje.

Vertė keičiasi taip:

Db2 => pridėti prie db2inst1
db2 => atnaujinti duomenų bazės tvarkyklės konfigūraciją naudojant autentifikavimo server_encrypt
db2 => db2stop jėga
db2 => db2start

Autentifikavimo paketas atrodys taip:


Tačiau užklausos tekstas ir rezultatas vis tiek bus perduodami aiškiu tekstu.

Wireshark užklausų paketas:


Atsakyti paketą Wireshark:


Jei parametras AUTHENTICATION nustatytas į DATA_ENCRYPT, tada vartotojo kredencialai ir informacija, perduodama tarp kliento ir serverio, yra užšifruota.

Reikšmė keičiasi taip pat, kaip ir aukščiau pateiktame pavyzdyje:

Db2 => pridėti prie db2inst1
db2 => atnaujinti duomenų bazės tvarkyklės konfigūraciją naudojant autentifikavimo data_encrypt
db2 => db2stop jėga
db2 => db2start

Po to perduodami duomenys taip pat bus užšifruoti:


Taip pat reikia atkreipti dėmesį į KLIENTO autentifikavimo tipą. Taikant šį autentifikavimo tipą, laikoma, kad tarp kliento ir serverio egzistuoja saugus ryšio kanalas, o jei vartotojas turi prieigą prie kliento, jis gali prisijungti prie serverio nepatikrinęs teisingų kredencialų. Tai reiškia, kad autentifikavimas vyksta kliento pusėje, serverio pusėje patikrinimas neatliekamas. Net jei vartotojas, kuris prisijungia prie serverio, neturi prieigos teisių, jis vis tiek gauna visas teises, kurios yra priskirtos VIEŠAI grupei. Todėl neturėtumėte naudoti šio tipo autentifikavimo, jis suteiks užpuolikams galimybę lengvai pasiekti serverį.

Jei dėl kokių nors priežasčių reikalingas tokio tipo autentifikavimas, turite atsižvelgti į tai, kad yra du papildomi parametrai, kurie galiausiai turi įtakos vartotojo kredencialų tikrinimui. Tai yra parametras trust_allclnts, su kuriuo galite nurodyti, kurie klientai laikomi patikimais, ir parametras trust_clntauth, kuris nustato, kur patikrinti prisijungimo vardą ir slaptažodį, jei jie buvo išsiųsti prisijungimo metu. Abi šios parinktys turi įtakos autentifikavimui tik tuo atveju, jei AUTHENTICATION yra CLIENT.

Jei autentifikavimas sėkmingas, vartotojo ID susiejamas su DB2 ID. Paprastai identifikatorius yra toks pat kaip vartotojo vardas, tačiau jame naudojami didžiosios raidės.

Autorizacija

Autorizacijos proceso metu patikrinama, ar vartotojas turi reikiamas teises atlikti prašomus veiksmus. Egzistuoja DBVS egzemplioriaus ir duomenų bazės autoritetai.

Egzempliorių lygio leidimai nurodyti duomenų bazės tvarkyklės konfigūracijoje. Tai yra šios galios:

  • SYSADM (sistemos administratoriaus įgaliojimas);
  • SYSCTRL (sistemos valdymo institucija);
  • SYSMAINT (sistemos priežiūros institucija);
  • SYSMON (sistemos stebėjimo institucija).

Šios privilegijos nustatomos nurodant grupę, kurios narys bus vartotojas. Tam naudojami šie dbmcfg failo parametrai (pagal aukščiau nurodytus leidimus):

Nėra lengva gauti sąrašą vartotojų, kurie priklauso grupei naudojant DB2, tai turite padaryti pačioje operacinėje sistemoje arba išanalizuoti, kurioms grupėms priklauso konkretus vartotojas (žr. užklausą skirtuke „naudingos užklausos“).

Nustatydami DB2, būtinai patikrinkite vartotojų, kuriems buvo priskirta SYSADM teisė, sąrašą. Ši institucija leidžia valdyti visus duomenų bazės objektus.

Konkrečios bazės autoritetą galima peržiūrėti SYSCAT.DBAUTH rodinyje. Atkreipkite dėmesį į CONNECTAUTH privilegiją, kuri lemia, ar vartotojas turės prieigą prie duomenų bazės, ar ne, ir NOFENCEAUTH privilegiją, kuri atsakinga už neaptvertų procedūrų ir funkcijų kūrimą. Tokios procedūros atliekamos duomenų bazės adresų erdvėje ir, įvykus klaidai, gali pažeisti duomenų bazės ir joje esančių lentelių vientisumą.

Privilegija

DB2 privilegijos gali būti suteiktos įvairiems objektams. Prieigos prie stalo privilegijas galite peržiūrėti SYSCAT.TABAUTH rodinyje. Duomenys apie suteiktos privilegijos tipą yra saugomi atskiruose stulpeliuose, priklausomai nuo pačios privilegijos (SELECTAUTH, DELETEAUTH ir kt.). Suteikdami privilegiją naudodami komandą GRANT, privilegijoms REFERENCES ir UPDATE taip pat galite nurodyti stulpelių, kuriems bus taikomos privilegijos, pavadinimus. Informaciją apie tai galite rasti rodinyje SYSCAT.COLAUTH

Paprogramių privilegijas (funkcijas, procedūras ir metodus) galima peržiūrėti SYSCAT.ROUTINEAUTH rodinyje. Viskas čia nėra visiškai nereikšminga, priklausomai nuo laukų SPECIFICNAME ir TYPENAME, privilegijos gali būti suteiktos visoms nurodytos schemos paprogramėms.

Vartotojai, grupės, vaidmenys

Visi duomenų bazės kredencialai ir įvairios privilegijos gali būti suteikti vartotojams, grupėms ar vaidmenims. Vartotojai, grupės ir narystė vartotojų grupėje yra reguliuojami už pačios duomenų bazės ribų. Šiuo atžvilgiu, suteikiant įgaliojimus ir privilegijas, patartina atsižvelgti į tam tikras rekomendacijas ir žinoti kai kurias subtilybes. Grupėms nerekomenduojama suteikti duomenų bazės privilegijų ir įgaliojimų, ypač duomenų bazės ryšio (CONNECTAUTH). Turėtumėte suteikti teises konkretiems vartotojams ar vaidmenims, kuriems to reikia. Vaidmenų palaikymas DB2 įdiegtas nuo 9.5 versijos. Narystė vaidmenyje valdoma pačioje duomenų bazėje.

Be to, DB2 turi integruotą VIEŠOS vaidmenį. Duomenų bazės vartotojui nereikia suteikti VIEŠOS vaidmens: jūs negalite atšaukti vartotojo VIEŠOS vaidmens. Kai privilegija suteikiama VIEŠAI vaidmeniui, privilegija suteikiama visiems duomenų bazės vartotojams. Nesuteikite jokių duomenų bazės įgaliojimų VIEŠAI vaidmeniui. Lentelių ir vaizdų privilegijos turėtų būti suteikiamos labai atsargiai, tik peržiūrai ir be galimybės perskirstyti (SU DOTACIJOS OPTION).

Dėl autentifikavimo pobūdžio, suteikiant privilegijas, nėra tikrinamas vartotojo ar grupės egzistavimas sistemoje. Dėl to sistemoje gali atsirasti autentifikavimo naudotojų, kurie nėra susieti su tikrais sistemos vartotojais. Tokius vartotojus galite rasti naudodami šią SQL užklausą:

PASIRINKTI authid FROM sysibmadm.authorizationids WHERE authidtype = "U" IR authid NOT IN (PASIRINKITE vartotojo vardą IŠ LENTELĖS (sysfun.USERS ()) AS W)

Panašių grupių paieškai naudojama panaši užklausa, tačiau užklausa nurodo, kad nereikia rodyti duomenų apie VIEŠUS:

PASIRINKTI authid FROM sysibmadm.authorizationids WHERE authidtype = "G" IR authid NOT IN (PASIRINKITE grupės pavadinimą IŠ LENTELĖS (sysfun.groups ()) AS W) IR authid! ="VIEŠA"

LBAC

DB2 turi galingą mechanizmą, leidžiantį atskirti prieigą prie duomenų lentelėse pagal etiketes (etiketėmis pagrįsta prieigos kontrolė). Mechanizmas leidžia nustatyti saugos etiketes konkrečiose eilutėse ar stulpeliuose taip, kad vartotojas, neturintis prieigos prie saugomų duomenų, net nesužinotų apie jų egzistavimą. Nėra prasmės gilintis į LBAC diegimo metodus, nes gamintojas turi pamoką šia tema:

Automatiniai nuskaitymo įrankiai

Konfigūruojant IBM DB2 serverio saugumą, svarbu naudoti tam tikrus saugos skaitytuvus (pvz., NGS SQuirreL for DB2, MaxPatrol ir kt.). Skaitytuvai aiškiai nurodys nustatymų spragas, kurias galbūt praleidote, arba pateiks informaciją analizei patogia forma:

Naudingos užklausos ir komandos

Gaukite duomenų bazės tvarkyklės nustatymus:

pasirinkite pavadinimą, reikšmę iš sysibmadm.dbmcfg

arba

db2 => gautidbmplg

Keisti duomenų bazės tvarkyklės parametrą:

db2 => atnaujinkite duomenų bazės tvarkyklės konfigūraciją naudodami

Po to turite iš naujo paleisti egzempliorių:

db2 => db2 sustabdytijėga
db2 => db2 pradėti

Gaukite duomenų bazės nustatymus:

pasirinkite pavadinimą, reikšmę iš sysibmadm.dbcfg

arba

db2 => gauti db cfg už

Operacinės sistemos vartotojų sąrašas:

pasirinkti vartotojo vardą iš lentelės (sysfun.USERS ()) AS t

Operacinių sistemų grupių sąrašas:

pasirinkite grupės pavadinimą iš lentelės (sysfun.GROUPS ()) AS t pasirinkite AUTHID, AUTHIDTYPE iš sysibmadm.AUTHORIZATIONIDS

Spausdinti dabartinės duomenų bazės pavadinimą:

pasirinkite dabartinį serverį iš sysibm.sysdummy1

Įveskite dabartinį vartotojo vardą:

pasirinkiteVartotojassysibm. sysdummy1

Gaukite grupių, kurioms priklauso vartotojas, sąrašą:

pasirinkite GROUPNAME iš lentelės (sysfun.groups_for_user (" “)) kaip t

Visų įdiegtų DBVS sąrašas:

$ db2ls

Visų DBVS atvejų sąrašas:

$ db2 ilist

Apribokite rodomų eilučių skaičių:

pasirinkite * iš skirtuko pavadinimo gauti tik pirmas 5 eilutes

IBM DB2 yra beveik 30 metų IBM kūrimo ir tyrimų darbo rezultatas. Naujausioje šios DBVS versijoje (6.x) yra vienas iš sudėtingiausių valdymo ir optimizavimo įrankių rinkinių ir duomenų bazės variklis, kurį galima išplėsti nuo nešiojamojo kompiuterio su Windows 95 iki visos S / 390 pagrindinių kompiuterių, kuriuose veikia OS / 390.

DB2 paketas išleistas dviem leidimais: DB2 Workgroup ir DB2 Enterprise Edition. Šioje DBVS įdiegiamos visos naujoviškos duomenų bazės variklio technologijos, žinomos iš ankstesnių DB2 versijų, pvz., užklausų apdorojimo lygiagretinimas, visas replikacijos įrankių rinkinys, suvestinės lentelės duomenų bazės našumui gerinti, į objektą orientuotos duomenų bazės projektavimo galimybės ir Java kalbos įrankiai. Be to, DB2 yra pilnas daugialypės terpės plėtinių rinkinys, leidžiantis saugoti ir valdyti tekstą, garsą ir vaizdo įrašus, vaizdus ir geografinius duomenis. Galime teigti, kad pagal mastelį IBM specialistų sukurta duomenų bazių klasterizacijos technologija neturi analogų. Šie plėtiniai labai palengvina žiniatinklio programų, taip pat programų, kuriose yra fotografinių vaizdų ir didelių tekstinių ataskaitų, kūrimą. DB2 taip pat yra gana konkurencinga kaip programų kūrimo platforma, nes yra saugomų procedūrų kūrimo priemonė, kuri automatiškai konvertuoja SQL sakinį į atitinkamą Java klasę ir įtraukia jį į duomenų bazės struktūrą. DB2 6.1 žymiai pagerina sąveiką su kitomis DBVS, naudodama Microsoft OLE DB specifikaciją – naują duomenų bazių prieigos standartą. Didžiausio pagyrimo nusipelno DB2 administravimo įrankiai, kurie naujoje versijoje perrašyti Java kalba ir kuriuos galima gauti iš interneto.

Pagrindiniai šios DBVS trūkumai yra santykinis administravimo sudėtingumas ir populiarių serverių operacinių sistemų, tokių kaip LINUX, diegimo nebuvimas (iki šiol).

Šioje DBVS, „Index Smart-Guide“ dėka, galima atlikti derinimą, suformuojant optimalius indeksus tam tikram skambučių skaičiui, kuris apibūdina tipišką duomenų bazės apkrovą. DB2 yra vienintelis paketas, leidžiantis generuoti suvestines lenteles, o tai žymiai pagerina DBVS kaip duomenų saugyklos efektyvumą. Suvestinė lentelė yra laikina darbo sritis, kurią duomenų bazė naudoja atsakymams į dažnai užklausas saugoti. Na, galime teigti, kad su naujomis funkcijomis, lygiagretinimo įrankiais ir galimybe pasirinkti beveik bet kokį sujungimo ir indeksavimo tipą (išskyrus galbūt rastrinius indeksus), DB2 6.1 modelis tampa pati nebrangiausia didelio našumo sistema. Šios DBVS administracinės valdymo priemonės gana atitinka sprendžiamų užduočių lygį, be to, suteikia itin plačias galimybes darbui su multimedijos duomenimis bei programavimui (ko Microsoft SQL Server sistemoje akivaizdžiai trūksta).

DBVS iš Informix.

Pastaruoju metu įvyko perėjimas nuo reliacinės DBVS prie objektinės (tai aiškiai matyti Oracle pavyzdyje). „Informix“ taip pat laikydamasi šios koncepcijos paskelbė apie naują „Centaur“ duomenų bazių valdymo sistemos sprendimą, pagrįstą „Informix Dynamic Server 7.3“ reliacine duomenų baze ir „Informix Universal Data Option“ objektų reliacine duomenų baze ir derinant aukštą „Dynamic Server“ našumą dirbant su duomenimis su universalumu ir universalumu. universalios duomenų parinkties daugialypės terpės funkcijos. Šis įgyvendinimas skirtas interneto sistemoms kurti. Tikėtina, kad ši DBVS turės lanksčią kūrimo aplinką su mastelio keitimu, atitinkančiu intensyvius internetui būdingus darbo krūvius, ir priemones dirbti su naujo tipo duomenimis, kurios, tobulėjant žiniatinkliui, pradėtos naudoti visur. Naujosios sistemos „Java“ įrankiai leis kūrėjams kurti saugomas procedūras, pasirinktines programas ir „DataBlades“, kuriuos „Informix“ vadina pasirinktiniais duomenų bazių plėtiniais, „Java“.

Inforix klientų požiūriu, tai didelis žingsnis į priekį, nes iki šiol su DataBlades jie galėjo naudoti tik C ir SPL, Informix vidinę kalbą saugomoms procedūroms rašyti. Be to, „Centaur“ pakete bus įmontuoti „ActiveX“ objektų tvarkymo įrankiai. Tai suteiks galimybę, pavyzdžiui, sukurti duomenų bazėje saugomas procedūras Visual Basic kalba; tačiau tam reikia, kad „Centaur“ paketas veiktų „Windows NT“.

„Centaur“ bus „Informix Dynamic Server“ priedas ir dirbs su tradiciniu šio paketo duomenų bazės formatu, todėl vartotojai turės visas senas funkcijas, o sistemos atnaujinimas į naują versiją nebus sunkus. Be to, „Centaur“ išsaugos visas dizaino ir programavimo galimybes, dėl kurių „Informix Universal Server“ buvo pripažintas kaip technologinis proveržis. Naujoji sistema bus aprūpinta įrankiais, skirtais objektiniam duomenų bazių projektavimui, specializuotų lentelių kūrimui ir indeksavimo programoms; tai leis vartotojams kurti savo funkcijas į užklausas ir nepasikliauti vien standartiniais SQL įrankiais.

Išvados.

Atsižvelgdami į pagrindines AIS pastatų architektūrų, serverių operacinių sistemų ir DBVS charakteristikas, ateityje kaip AIS architektūrą, kaip Linux serverio OS ir kaip Oracle 8i DBVS, rinksimės interneto / intraneto architektūrą. Suvestinėje lentelėje parodytos dviejų dažniausiai naudojamų sprendimų, pagrįstų Microsoft SQL Server 7.0 (NT) ir Oracle8i (Unix, Linux) pagrindu, charakteristikos.

Microsoft SQL Server 7.0

Administracija

Grafiniai įrankiai

Aptarnavimo paprastumas

Duomenų variklis

Darbas su keliais procesoriais

Priimtinas

Prisijungimo funkcija ir rodyklės pasirinkimas

Vienu metu kelių vartotojų prieiga

Multimedijos apdorojimas

Prisijungimas prie interneto

Garso, vaizdo, vaizdo apdorojimas

Ieškokite šiame tekste

Sąveika

Priimtinas

Sąsaja su kitomis duomenų bazėmis

Vienkartinė registracija

Darbas kontroliuojant įvairias OS

Priimtinas

Programavimo galimybės

Priimtinas

Išsaugomos procedūros ir trigeriai

Vidinė programavimo kalba

Duomenų bazių kūrimas

Objektinės sistemos

Darbas su šakomis

Dubliavimas

Paskirstytas operacijų apdorojimas

Nuotolinis administravimas

Duomenų saugyklų organizavimas ir ataskaitų rengimas

Pakrovimo įrankiai

Analizės įrankiai

Naujiena svetainėje

>

Populiariausias