Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  SQL baasi muudatuste logimine märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
zaitz
Kreisi kasutaja
zaitz

liitunud: 08.07.2003




sõnum 22.02.2017 12:08:42 SQL baasi muudatuste logimine vasta tsitaadiga

Esmalt hoiatan, et olen SQL teemal täielik võhik ja kaevan olude sunnil.
Lugu järgmine:
Olemas on programm, mis kirjutab kord kuus GSM modemi kaudu saabuvad andmed MSSQL andmebaasi, kätte saab neid sealt hetkel ainult läbi programmi "export" funktsiooni, mis on aga ebamugav, seega võiks neile nt. PHP'ga ligi saada ja neid läbi veebiserveri serveerida.
Võtsin SQL baasi lahti ja lappasin käsitsi HeidiSQL kliendiga läbi, aga neid kirjeid mida mul enim vaja on üles ei leidnud. Küsisin tootjalt, ainsaks vastuseks sain, et seda pole ette nähtud ja omal vastutusel võin vaadata "Readings" tabelist. Seal tabelis neid kirjeid aga pole.
Kuna edasistele päringutele tootja enam vastata ei suvatse siis pöördungi lp. AHV'ide poole:
1. Kas võib olla, et andmed on baasis hetkel mingil mitteloetaval kujul?
2. Kas on olemas mingi valmis softijupike, mis monitooriks MSSQL baasi ja logiks kõik kirjed (koos asukohaga), mis baasi tehakse?
Kommentaarid: 34 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 32
tagasi üles
vaata kasutaja infot saada privaatsõnum
LKits
HV Guru
LKits

liitunud: 06.09.2007




sõnum 22.02.2017 13:35:56 vasta tsitaadiga

Võib-olla oleks lihtsam programmi lammutada ning vaadata, kus kohas MSSQL read/write funktsiooni esile kutsutakse ning sinna vahele logimise lüli tekitada.

Andmed võivad olla täiesti vabalt krüpteerituna andmebaasis.

_________________
itLahendused - Arvutite remont ja hooldus, veebilehtede loomine, soodne veebimajutus. Võta ühendust! Tel: +372 555 268 97 ja e-post info@itlahendused.ee
Kommentaarid: 13 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
napoleon
Unknown virus
napoleon

liitunud: 08.12.2008



Autoriseeritud ID-kaardiga

sõnum 22.02.2017 16:17:46 vasta tsitaadiga

1. jah, andmed võivad olla mitteloetaval kujul. Nagu LKits ütles, võivad olla krüpteeritud, aga võib ka midagi lihtsamat olla a'la serialiseeritud, base64 vms.
2. Minu teada sellist softijuppi ei ole, aga kui tabeleid palju pole, saab insert/update triggeri teha, mis mingit logi kirjutab. Siinkohal olgu öeldud, et kui need andmed ei ole loetavad kujul, siis ei saa ka trigger neid loetaval kujul kätte ehk kasu on sul sel juhul vaid niipalju, et näed mis tabelisse kirjutatakse.

Btw, by default näitab heidisql vist esimesed 1000 rida. Kas asi pole hoopis selles, et sa ei sorteerinud kirjeid aja järgi kahanevalt(eeldusel et sind eelkõige viimased huvitavad) ja selleks ei näinudki huvipakkuvaid kirjeid?

LKits, soovitatud programmi lammutamine on võimalik kui see on perl/python/php/... ehk mingi skriprimiskeel. Kui on exe, siis on enamasti muud variandid debugimiseks lihtsamad kui exet lammutama minna.
Kommentaarid: 76 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 59
tagasi üles
vaata kasutaja infot saada privaatsõnum
LKits
HV Guru
LKits

liitunud: 06.09.2007




sõnum 22.02.2017 17:30:12 vasta tsitaadiga

Exe disassemble ja hook ei ole raske.

Aga jah, kui andmed on andmebaasis juba Mitte loetavalt kujul, siis andmebaasi kirjutamise funktsiooni logimine on mõttetu. Saab muidugi analüüsida, et mis on originaal-string aga tüütu. Tõenäoliselt ei ole krüpteeritud, vaid näiteks base64 nagu eelnevalt mainiti.

_________________
itLahendused - Arvutite remont ja hooldus, veebilehtede loomine, soodne veebimajutus. Võta ühendust! Tel: +372 555 268 97 ja e-post info@itlahendused.ee
Kommentaarid: 13 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
sukelduja
HV Guru
sukelduja

liitunud: 14.06.2007




sõnum 22.02.2017 17:57:59 vasta tsitaadiga

Kui sul on Recovery model Full ja transaktsioonilogist tehakse korralikult backuppe, siis saad ükskõik millise hetke baasist taastada. SQL serveri manageerimiseks on ette nähtud tasuta vahendid, SQL management Studio https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms On olema spetsiaalne vahend SQL Server Profiler, millega saad logida kogu SQL serveri tegevust, kaasa arvatud absoluutselt kõik päringud. Lükkad Profileri käima, märgid ära mis evente tahad näha ja teed oma programmis andmete uuendamise või expordi ja näed täpselt ära, mis päringud toimusid.
Alati on võimalus, et andmed kogutakse ja siis mingil hetkel transformeeritakse teisteks andmeteks ja algsed andmed eemaldatakse. Aga tõenäoliselt ei ole need andmed selles tabelis või siis on jaotatud mitme tabel vahel ja export kasutab natuke keerulisemat päringut. Krüpteeringut ma ka ei usu, krüpteeritud andmete indekseerimine on päris suur peavalu ja asja korralikult tegemiseks on vaja palju aega ja raha.
Kommentaarid: 22 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 22
tagasi üles
vaata kasutaja infot saada privaatsõnum
zaitz
Kreisi kasutaja
zaitz

liitunud: 08.07.2003




sõnum 27.02.2017 09:57:44 vasta tsitaadiga

SQL Server Profiler on pakutud variantidest lihtsaim ja sealt juba asi natuke hargneb ka! Tänud!
Kommentaarid: 34 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 32
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  SQL baasi muudatuste logimine
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.