abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:33 | IT novinky

    Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.

    Ladislav Hagara | Komentářů: 3
    dnes 05:44 | Komunita

    Na YouTube a nově také na VHSky byly zveřejněny sestříhané videozáznamy přednášek z letošního OpenAltu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Komunita

    Jednou za rok otevírá společnost SUSE dveře svých kanceláří široké veřejnosti. Vítáni jsou všichni, kdo se chtějí dozvědět více o naší práci, prostředí ve kterém pracujeme a o naší firemní kultuře. Letos se dveře otevřou 26. 11. 2025 v 16:00. Můžete se těšit na krátké prezentace, které vám přiblíží, na čem naši inženýři v Praze pracují, jak spolupracujeme se zákazníky, partnery i studenty, proč máme rádi open source a co pro nás skutečně

    … více »
    SUSEMAS | Komentářů: 0
    dnes 04:22 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za říjen (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Zajímavý článek

    Jeff Quast otestoval současné emulátory terminálu. Zaměřil se na podporu Unicode a výkon. Vítězným emulátorem terminálu je Ghostty.

    Ladislav Hagara | Komentářů: 4
    včera 22:55 | IT novinky

    Amazon bude poskytovat cloudové služby OpenAI. Cloudová divize Amazon Web Services (AWS) uzavřela s OpenAI víceletou smlouvu za 38 miliard USD (803,1 miliardy Kč), která poskytne majiteli chatovacího robota s umělou inteligencí (AI) ChatGPT přístup ke stovkám tisíc grafických procesů Nvidia. Ty bude moci využívat k trénování a provozování svých modelů AI. Firmy to oznámily v dnešní tiskové zprávě. Společnost OpenAI také nedávno

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 16:22 | Pozvánky

    Konference Prague PostgreSQL Developer Day 2026 (P2D2) se koná 27. a 28. ledna 2026. Konference je zaměřena na témata zajímavá pro uživatele a vývojáře. Příjem přednášek a workshopů je otevřen do 14. listopadu. Vítáme témata související s PostgreSQL či s databázemi obecně, a mohou být v češtině či angličtině.

    TomasVondra | Komentářů: 0
    včera 13:22 | Nová verze

    Byl vydán Devuan 6 Excalibur. Přehled novinek v poznámkách k vydání. Kódové jméno Excalibur bylo vybráno podle planetky 9499 Excalibur. Devuan (Wikipedie) je fork Debianu bez systemd. Devuan 6 Excalibur vychází z Debianu 13 Trixie. Devuan 7 ponese kódové jméno Freia.

    Ladislav Hagara | Komentářů: 4
    včera 10:44 | IT novinky

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu poprvé překročil 3 %, aktuálně 3,05 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 27,18 %. Procesor AMD používá 67,10 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 1
    včera 10:33 | Zajímavý projekt

    Joel Severin v diskusním listu LKML představil svůj projekt linuxového jádra ve WebAssembly (Wasm). Linux tak "nativně" běží ve webovém prohlížeči. Potřebné skripty pro převod jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (18%)
     (18%)
     (22%)
     (16%)
     (21%)
     (16%)
     (17%)
    Celkem 307 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    Dotaz: Oprava pozkozene PostgreSQL database

    1.8.2009 16:45 Radim Kolář | skóre: 11
    Oprava pozkozene PostgreSQL database
    Přečteno: 743×

    po havarii filesystemu doslo k poskozeni postgresql database. V adresari kde se normalne nachazeji data postgresu existuji jen podadresare:

    base  pg_clog pg_multixact    pg_xlog

    Tedy schazi predevsim podadresar global a pg_twophase. neexistujici twophase asi nevadi, aplikace nikdy 2pc nepouzivala.

    Je nejaka moznost jak se dostat k ulozenym datum? Zkousel jsem prekopirovat global z jine instalace pgsql nefungovalo to. Je potreba pouzit pg_resetxlog?

    Odpovědi

    okbob avatar 1.8.2009 22:57 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    global obsahuje data k sdilenym tabulkam - napr. pg_database, pg_tablespace a dalsi. Tudiz kopirovani z jine database tezko muze fungovat - i kdyby byl zhruba stejny obsah, tak tezko budou tabulky drzet identifikatory - tady by pomohla asi jenom zaloha. 

    Pokud máte verzi do 8.2 můžete zkusit http://svana.org/kleptog/pgsql/pgfsck.html abyste se dostal k datům.

    Pavel Stěhule

    3.8.2009 12:51 Radim Kolář | skóre: 11
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

     

    Otazka je, co vsechno je ulozene v adresari globals. Pgfsck mi nefunguje a autor mi napsal ze:

    Tricky, the global contains all information about databases, users and
    tablespaces.

    Definice uzivatelu muzu s klidnym srdcem ozelet - na vlastniku objektu mi nezalezi stejne tak na pristupovych pravech, definice tablespaces take (zadne nebyly pouzity), a pak je tam mapa OID -> database name v global/pg_database coz je textovy soubor vyhlizejici jako:

     

    "template1" 1 1663 524
    "template0" 10818 1663 524
     

    Tedy nic vyznamneho se vlastne neztratilo, asi jediny problem bude obsah souboru global/pg_control ktery ma za nasledek to, ze se databaze v pgsql neotevre.

    3.8.2009 18:38 misch | skóre: 3
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    Nepomohlo by jít na to z druhé strany? Tzn. vytvořit si někde bokem novou prázdnou instalaci (initdb ...), a v ní jednu databázi (tím pádem tam bude existovat kromě funkčního adresáře "global" i adresář "base" s touhle jedinou databází). Pak ten nový pomocný PostgreSQL ukončit, adresář base/xyz promazat a zkopírovat do něj jednu z těch vadných databází, a zkusit jestli se k ní pak PostgreSQL bude hlásit?

    okbob avatar 3.8.2009 21:02 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    Teoreticky by to slo, ale jinak. Vytvorit si globals, a pak do clusteru nakopirovat na odpovidajici misto datove soubory - ktere bude 100% nutne prejmenovat. Pokud aplikace pouziva pouze vestavene datove typy, tak by to mohlo projit.

    5.8.2009 22:44 Hlípa | skóre: 13
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    Pokud jsou zachovany adresare clog a base, tak by global mel jit zrekonstruovat, alespon k tomu, aby se dal provest dump. Defakto neco podobneho se dela pri upgradu databaze pomoci pg_migratoru. Datove typy nejsou problem, neb ty jsou uchovany v base. Misto prejmenovani souboru, je mozna lepsi provest update tech rekordu v databazi. Komplikace by mohlo zpusobit nastaveni veci pro vacuum, ale pro dump to neni nutne.

    4.8.2009 22:27 Radim Kolář | skóre: 11
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    ten pgfsck ma jeste hodne chyb, zdaleka jeste neni vhodny pro realne nasazeni. Pokusy s nim dopadly dost blede. vydumpoval mi uspesne jenom par tabulek; tezko rici zda alespon kompletne. U nekterych databazi si neskrtl vubec.

    Kdyz se do toho scriptu zadratuje napevno OID databaze (jak autor poradil) tak umi pracovat i bez adresare global.

    okbob avatar 5.8.2009 06:09 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    Jakou používáte verzi PostgreSQL?

    5.8.2009 12:14 Radim Kolář | skóre: 11
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    8.2

    okbob avatar 5.8.2009 17:49 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    To by jeste melo zvladnout. Je ovsem otazkou, zda-li nebyly naboreny i datove soubory.

    5.8.2009 19:19 Radim Kolář | skóre: 11
    Rozbalit Rozbalit vše pgfsck

    On je to hroznej soft. Ted jsem ho spustil na db, kterou jsem uspesne naimportoval ze zalohy a dava hlasky jako:

    -- Table sql_packages(10752):Page 0:Tuple 6: Unknown type character_data (10637)
    
    -- Table pg_class(1259):Page 3:Tuple 19: Unknown type xid (28)
    

    a nevydumpne prakticky zadna data. Na tom softu se musi opravdu jeste hodne zapracovat aby byl alespon trochu pouzitelny. Navic je to v Perlu, kdyby to bylo alespon v nejakem rozumnejsim/citelnejsim jazyku, tak bych se byl ochoten s tim zabyvat a pripadne ho opravit. Perl mi nestoji za tu (neplacenou) namahu.

    Mate pravdu v tom ze investovat do podobneho nastroje nema asi moc smysl, protoze kolik je lidi vubec ochotno platit za recovery pgsql databaze. Mohlo by mozna neco byt ve standardni instalaci pgsql, kdyby to uzivatele nejak vice potrebovali. Treba db2 ma nastroj pro dumpovani dat z poskozenych tablic v zakladni instalaci.

    okbob avatar 5.8.2009 21:31 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: pgfsck

    Evidentně se mu dlouho nikdo nevěnoval - tohle jsou pravděpodobně nové věci z 8.2. Problém s takovým softem je ten, že musí obsahovat kompletní slovník dané verze (jelikož běží bez databáze). Tady nejde o opravu jako spíš o doplnění. Z 8.2 to nepodporuje plnou množinu datových typů.

    Kdyby někdo takový sw psal a udržoval, tak proč ne. Aktuálně to může existovat jen jako školní práce. Technicky by to neměl být problém - všechny informace jsou k dispozici, včetně kódu implementace datových typů a čtení datových stránek. V podstatě jde o low level sekvenční čtení datového souboru. Dovedu si představit hack do postgresu, který umožní přípojení externího datového souboru s externím popisem struktury třeba v txt formátu. Ale to je minimálně týden hackingu, pro někoho, kdo ví, co dělá - a dva pro laika. Ale i kdyby to někdo napsal, tak to zálohu nenahradí - pg nemá kontrolní součty na stránkách, takže se nepozná, jestli daná stránka byla nabořena nebo nikoliv - a jelikož nebylo provedeno recovery, tak data v tabulce mohou být nekonzistentní. A nesmí se zapomínat na MVCC - bez transakčního logu se nedá poznat, která transakce byla potvrzena a která nikoliv, takže se v dumpu exaktně nepoznají aktivní a mrtvé záznamy.

    Je to v podstatě neřešitelné - ti, co mají prostředky a znalosti, na vytvoření tohoto sw, tak ti vědí co a jak zálohovat, a těm ostatním buďto chybí znalosti nebo prostředky případně obojí.

    5.8.2009 16:35 Radim Kolář | skóre: 11
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    Tak jsem se nakonec na to vybodnul, nenasel jsem nikoho kdo by to umel a komu by se to chtelo do 2k EUR udelat. To jsou nevyhody OSS databazi, moc lidi to komercne nedela a ti co prodavaji support delaji jen zakladni veci. Kdyby to byl Oracle tak tam se obnova ponicenych databazi bezne dela.

    Ze vsech databazi co zarvaly opravdu dulezite byly jen dve. Jedna zaloha byla z prosince 2007 (mene dulezita db, vicemene archivovana data) a druha z 1. kvetna 2009 (kdyz delali upgrade). Oni zalohovali sice poctive ale jen filesystem s /home a instalaci unixu nikoliv vlastni data v databazich, asi nevedeli ze se mohou take ponicit. Zalohy databazi meli jen kdyz jim nekdo delal upgrade, tak to pred nim zazalohoval.

    Obe dve jsem jim obnovil ze zaloh, to pg_restore to je ale pekne pomaly obnovovalo tak 2GB/hodinu.

    okbob avatar 5.8.2009 18:09 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    Za 2K euro bych se i pokusil fixnout pgfsck. A třeba by to to něco zachránilo. Za 200e bych zkusil jednodenní rekonstrukci chybějících souborů.

    U PostgreSQL se nestává, že by někdo přicházel o data - tudíž se nevyplatí investovat do vývoje sw :(. Prostě to není na uživení - Oracle je něco jiného - tam se donedávna nediskutovalo o nákladech - podniky byli dojná kráva. Za pět let, co dělám v ČR veřejně s PostgreSQL jsem osobně fixoval db jenom jednou a jednou radil po telefonu. A stejně nevíte - při poruše file systému, jestli data jsou konzistentní nebo nikoliv - v tom zálohu nic nezastoupí.

    Restore se dá urychlit - chová se dle konfigurace - měl byste se dostat na cca 30GB/h (záleží na velikosti operační paměti a rychlosti disku). S dvěma GB bych se podíval na konfiguraci db a systému.

    po dobu restore na 8.2

    fsync = off
    maintenance_work_mem=alespon 256MB (pokud mel server alespon 512MB)

    Po dokonceni restore fsync=on, a m_w_m na optimum pro provoz

    5.8.2009 22:58 Hlípa | skóre: 13
    Rozbalit Rozbalit vše Re: Oprava pozkozene PostgreSQL database

    pg_restore z verze 8.4 umi cpat data paralelne, takze obnova je pak rychlejsi. Mel by to jit pouzit i na starsi verze.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.