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 18:30 | Komunita

Jednodeskový počítač Raspberry Pi slaví již 5 let. Prodej byl spuštěn 29. února 2012. O víkendu proběhne v Cambridgi velká narozeninová party. Na YouTube bylo při této příležitosti zveřejněno video představující zajímavé projekty postavené na Raspberry Pi.

Ladislav Hagara | Komentářů: 0
dnes 18:30 | Nová verze

Byla vydána verze 2017.1.1 svobodného multiplatformního leteckého simulátoru FlightGear. Kódový název a výchozí letiště této verze je Bergen. Přehled novinek v Changelogu.

Ladislav Hagara | Komentářů: 0
dnes 10:50 | Zajímavý software

Mozilla.cz informuje o dvou nových experimentálních funkcích v programu Firefox Test Pilot (zprávička). Snooze Tabs slouží k odkládání panelů na později. Pokud vám někdo pošle odkaz, ale vy nemáte čas si stránku hned přečíst, můžete si naplánovat otevření panelu na později. Stačí kliknout na tlačítko a vybrat, kdy chcete panel otevřít. Firefox panel schová a ve vybraný čas znovu otevře. Pulse umožňuje ohodnotit, jak dobře stránka funguje, např. jak rychle se ve Firefoxu načetla. Podle nasbíraných hodnocení pak bude Mozilla prohlížeč ladit.

Ladislav Hagara | Komentářů: 4
dnes 02:00 | IT novinky

V Barceloně probíhá veletrh Mobile World Congress 2017. Nokia na něm například představila (360° video na YouTube) novou Nokii 3310 (YouTube). BlackBerry představilo BlackBerry KEYone (YouTube) s QWERTY klávesnicí. LG představilo LG G6 (YouTube). Huawei HUAWEI P10 a P10 Plus. Samsung představil tablet Galaxy Tab S3.

Ladislav Hagara | Komentářů: 1
včera 14:00 | Nová verze

Komunita kolem Linuxu From Scratch (LFS) vydala Linux Linux From Scratch 8.0 a Linux From Scratch 8.0 se systemd. Nové verze knih s návody na instalaci vlastního linuxového systému ze zdrojových kódů přichází především s Glibc 2.25 a GCC 6.3.0. Současně bylo oznámeno vydání verze 8.0 knih Beyond Linux From Scratch (BLFS) a Beyond Linux From Scratch se systemd.

Ladislav Hagara | Komentářů: 0
včera 11:11 | Nová verze

Byla vydána verze 0.10.0 webového prohlížeče qutebrowser (Wikipedie). Přehled novinek v příspěvku na blogu. Vývojáři qutebrowseru kladou důraz na ovladatelnost pomocí klávesnice a minimální GUI. Inspirovali se prohlížečem dwb a rozšířeními pro Firefox Vimperator a Pentadactyl. Prohlížeč qutebrowser je naprogramován v Pythonu a využívá PyQt5. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GNU GPL 3.

Ladislav Hagara | Komentářů: 27
25.2. 16:22 | Nová verze

Po pěti měsících od vydání Waylandu a Westonu 1.12.0 oznámil Bryce Harrington (Samsung) vydání Waylandu 1.13.0 a Westonu 2.0.0.

Ladislav Hagara | Komentářů: 5
24.2. 13:37 | Bezpečnostní upozornění

Společnost Cloudflare (Wikipedie) na svém blogu potvrdila bezpečnostní problém s její službou. V požadovaných odpovědích od reverzní proxy byla odesílána také data z neinicializované paměti. Útočník tak mohl získat cookies, autentizační tokeny, data posílaná přes HTTP POST a další citlivé informace. Jednalo se o chybu v parsování HTML. Zneužitelná byla od 22. září 2016 do 18. února 2017. Seznam webů, kterých se bezpečnostní problém potenciálně týká na GitHubu.

Ladislav Hagara | Komentářů: 1
24.2. 08:22 | Nová verze

Byla vydána první beta verze Ubuntu 17.04 s kódovým názvem Zesty Zapus. Ke stažení jsou obrazy Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu GNOME, Ubuntu Kylin, Ubuntu Studio a Xubuntu. Dle plánu by Ubuntu 17.04 mělo vyjít 13. dubna 2017.

Ladislav Hagara | Komentářů: 58
23.2. 17:53 | Bezpečnostní upozornění

Google na svém blogu věnovaném počítačové bezpečnost informuje o nalezení "reálného" způsobu generování kolizí hašovací funkce SHA-1. Podrobnosti a zdrojové kódy budou zveřejněny do 90 dnů. Již dnes lze ale na stránce SHAttered nalézt 2 pdf soubory, jejichž obsah se liší a SHA-1 otisk je stejný (infografika).

Ladislav Hagara | Komentářů: 41
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 726 hlasů
 Komentářů: 68, poslední dnes 07:29
    Rozcestník

    Dotaz: postgreSQL - udržování stejného schématu tabulek na více strojích

    7.9.2009 10:21 serda | skóre: 3
    postgreSQL - udržování stejného schématu tabulek na více strojích
    Přečteno: 751×

    zdravím,

    mám několik desítek strojů a v každém z nich je mimo jiné jedna databáze s asi stovkou tabulek..

    Poradí mi někdo nějaký jednoduchý nástroj, který mi zařídí, že když změním nějakou tabulku (přidám sloupec, či např. změním datový typ sloupce či defaultní hodnotu), aby se mi toto nové schéma tabulky změnilo i na ostatních strojích...

    tyto stroje jsou offline, takže tento nástroj bych použil v nějakém skriptu, který bych musel na každým stroji spustit

    díky za nějaký tipy

    Odpovědi

    7.9.2009 20:31 Filip Jirsák | skóre: 66 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    Opravdu ty změny budete dělat tak, že si sednete ke konzoli a začnete z hlavy bušit nějaké SQL příkazy a zkoušet, co to udělá? Pokud to s tou databází myslíte aspoň trochu vážně (a když jich je čtyřicet nebo kolik), budete spíš psát skript pro změnu schématu, který budete testovat na zkušební databázi, a teprve když bude odladěný, spustíte jej na produkční databázi. A pak už jej samozřejmě můžete spustit i na těch ostatních strojích. Když si do schématu přidáte i sekvenci s aktuálním číslem schématu, můžete si ten skript připravit i tak, že si sám zjistí aktuální verzi a provede postupně všechny změny až k aktuální (nebo jiné zvolené) verzi.
    8.9.2009 08:45 serda | skóre: 3
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    no tu databazi vytvarim v pgadminu..a nechce se mi kdyz upravim nejaky sloupec, abych to musel jeste davat do nejakyho vlastniho skriptu..pac vim, ze obcas proste neco zapomenu...

    potreboval bych nejaky nastroj, ktery mi ten skript vygeneruje sam..resp. nejaky nastroj, ktery mi zaridi, abych mohl ty databaze na ostatnich strojich udrovat se stejnym schematem

    ten update ostatnich stroju delam napr jednou za mesic a kolikrat je v ty databazi strasne moc zmen (novy tabulky, novy sloupce v existujicich tabulkach,....), a nekdy treba zadna zmena

     

    neco jako udelat backup schematu do plain textu a pak ty create table zduplikovat a udelat z jednotlivych sloupcu alter table add column (sice by to hlasilo milion chyb, ale snad bych zaridil ze sloupce tam budou nakonec vsechny...)

    8.9.2009 09:59 Filip Jirsák | skóre: 66 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    Zkuste se podívat, jestli neumí PostgreSQL nebo pgAdmin logovat vykonávané SQL příkazy, ze kterých byste si vyfiltroval ALTERy a CREATE. Porovnávat změny ve schématu a dělat z toho ALTERy mi připadá jako ten nejsložitější možný způsob, už jenom proto, že jednotlivé změny na sobě mohou záviset a je tedy nutné je udělat ve správném pořadí.
    8.9.2009 14:34 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    no tu databazi vytvarim v pgadminu.
    hmm, 100 tabuliek, 10 strojov a samovražedné sklony k tomu? :-)
    8.9.2009 14:52 selfrule | skóre: 4
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    mrkni na tohle:

    http://www.postgresql.org/docs/8.4/interactive/continuous-archiving.html

     

    pouziva se to pro zalohovani, vzdycky by sis ty wal soubory zazalohoval a jednou za cas pustil na ostatni databaze

     

    8.9.2009 15:12 Filip Jirsák | skóre: 66 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    To by se ale přenášela i data, nebo se mýlím?
    9.9.2009 09:41 selfrule | skóre: 4
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    Jo to mas pravdu, hledal jsem to v rychlosti a tohle mi nedoslo :)

    8.9.2009 16:48 serda | skóre: 3
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    tak sem to vyresil tak trochu krkolome a asi i nebezpecne..

     

    1. zazalohuju celou puvodni databazi (to jen pro jistotu, kdyby nasledujici postup selhal)

    2. zazalohuju jen data stare databaze

    3. smazu vsechny tabulky v databazi

    4. restoruju novou databazi, resp. nove schema (puvodni schema je vzdy podmnozinou - jelikoz o tom vim, tak si to proste ohlidam :)

    5. restoruju puvodni data ...ty chybejici sloupce se doplni defaultnima hodnotama

     

    je to trosku hnusne vyresene, ale provede to presne to co potrebuju :)

    8.9.2009 16:50 FooBar
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    To je dost sileny. Milionkrat lepsi, inteligentnejsi, konzistentnejsi, bezpecnejsi a obvyklejsi reseni je, jak rikal jiz kolega vyse, proste si pripravit SQL skript kterej poustis na testovacim stroji a pripadne modifikujes dokud neudela to co chces, a pak ho pustis na vsech ostatnich.

    default avatar 9.9.2009 21:24 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    a pak ho pustis na vsech ostatnich.

    A já se modlím i u tohoto kroku. :-)

    okbob avatar 10.9.2009 05:49 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    ALTER skripty je nejlepší psát v ruce - pak víte, co obsahují. Navíc v PostgreSQL lze alter skript obalit transakcí. Tudíž, když někte v půli spadne, tak se vůbec nic neděje. Tj.

    BEGIN
      ALTER TABLE foo ADD COLUMN boo integer;
    COMMIT

     

    10.9.2009 10:43 kaaja | skóre: 23 | blog: Sem tam něco | Podbořany, Praha
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    Není nic jednoduššího, než ještě mezi vývojové prostředí a produkční vložit jedno, které je obrazem produkčního. A předtím než něco nasadím na produkci, tak to tam testnout.

    xkucf03 avatar 12.9.2009 17:35 xkucf03 | skóre: 45 | blog: xkucf03
    Rozbalit Rozbalit vše Porovnání dvou DB

    BTW: neznáš nějaký testovací nástroj na porovnání dvou databází (jen model, ne data)? Něco na způsob: udělám dump (jen schématu) obou DB, odfiltruji komentáře (obsahují např. datum, nebo jiné věci, které se mohou měnit) a porovnám je.

    Prostě pro kontrolu, abych měl jistotu, že ten skript s ALTER a CREATE… příkazy dělá přesně to, co chci.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    default avatar 13.9.2009 09:27 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: Porovnání dvou DB

    Porovnání schémat umí třeba SQL Developer (měl by jít přes JDBC driver napojit na libovolnou databázi). Ale není to nic moc. Asi vůbec "nejjednodušší" je vylejt schémata do skriptů a porovnat klasickým diffem.

    17.9.2009 21:45 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Porovnání dvou DB
    select from pg_tables, pg_attribute, pg_index, pg_constraint (+ par referencii), sort, diff ...
    xkucf03 avatar 17.9.2009 22:18 xkucf03 | skóre: 45 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Porovnání dvou DB

    jj, to můžu udělat, ale zajímalo mě, jestli už existuje nějaké hotové řešení

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    10.9.2009 12:08 misch | skóre: 3
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    Vážně ten výpadek (tzn. to že od bodu 1 k bodu 5 má kdokoli utrum s přístupem k databázi) stojí za ušetřených pár minut při psaní alteru?

    8.9.2009 18:00 Tomáš
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    Jak již tady někdo poradil. Já jsem na Sybase ASA také používal tu metodu, že jsem si nechal vždy přeložit log databáze do SQL, v něm jsem scriptem našel všechny potřebné DDL příkazy a z toho sestavil upgrade dávku.

    Druhá možnost, která existuje, je najít nějaký nástroj na porovnání dvou DB, který by uměl vyrobit příslušný rozdílový scrip. Na to jsem používal nějaký předpotopní program dbdiff.exe (pro windoze), který se pomocí ODBC rozhraní připojil ke dvěma DB a vygeneroval rozdílový SQL script.

    To co jste nakonec udělal, zkombinovat data ze staré DB s DDL z nové DB, do toho bych nešel, pravděpodobně Vám to funguje čirou náhodou :-)

    Josef Kufner avatar 9.9.2009 17:44 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    Potřebuješ dvě věci:
    1. Diffovátko, které ti řekne jestli jsou nějaké odchylky od referenčního schématu. – To jen pro kontrolu.
    2. Script, který jsi vytvořil při úpravách na testovací databázi.
    To první seženeš, ale ten script si prostě musíš napsat sám. Dokud nebudeme mít použitelnou AI, tak to za tebe nikdo neudělá. Jediné co ti s tím může pomoct je, když ti nějaký nástroj ty příkazy napíše, abys je nemusel psát celé ručně. Další věc je, že do toho scriptu můžeš zahrnout i změny v datech – třeba když přidáš sloupeček a potřebuješ ho naplnit daty z jiných sloupečků.
    Hello world ! Segmentation fault (core dumped)
    default avatar 9.9.2009 21:34 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    Dokud nebudeme mít použitelnou AI, tak to za tebe nikdo neudělá.

    Ale, ale! Vygenerovat DDL na základě rozdílu (MINUS) user_tables, user_tab_cols, user_indexes či user_partitions zvládne snad každý, ne? ;-)

    9.9.2009 21:48 Filip Jirsák | skóre: 66 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    Teoreticky ano. Prakticky musíte zajistit, abyste indexovaný sloupec vytvořil před indexem, odkazovaný sloupec před ukazatelem (u referenční integrity) atd. A pak jsou tady takové chuťovky, jako nekompatibilní změna typu sloupce, případně přidání nového sloupce a jeho naplnění nějakou hodnotou závislou na ostatních datech, a tu konverzní funkci ze schématu nevykoukáte ani za sto let, protože tam nikde uložena není.
    default avatar 9.9.2009 22:21 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    Vytvoření sloupce před indexem je snad základ, ne? :-D

    Migrace dat je ovšem jiná pohádka. :-D

    10.9.2009 12:06 misch | skóre: 3
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích

    Migrace dat je v tomhle případě přesně ta stejné pohádka, ne? Když už má autor původního ten zvláštní přístup, že raději na 10 strojích provede dump+dropdb+createdb+create_schema+load_data než aby si ručně napsal 5-řádkový alter skript, tak bych se dost divil kdyby se po přidání sloupečku chtěl sám starat o migraci dat :-)

    Josef Kufner avatar 10.9.2009 21:57 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: postgreSQL - udržování stejného schématu tabulek na více strojích
    Migrace dat je ovšem jiná pohádka. :-D
    A právě tahle pohádka je důvod, proč automatika nestačí ;-)
    Hello world ! Segmentation fault (core dumped)
    16.9.2009 16:51 surda
    Rozbalit Rozbalit vše Apachi DDLUtils

    Zkusil bych pouzit Apachi DDLUtils. Jsou relativne pomale, ale spolehlive.

    http://db.apache.org/ddlutils/

    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.