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 14:00 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, zveřejnil na svém blogu recenzi notebooku Librem 13 od společnosti Purism. Používá jej již sedm měsíců a s ním i jako umělec spokojen. Potřebu francouzské AZERTY klávesnice vyřešil přelepkami. Na displej se podíval kalibrační sondou, barvy vyladil pomocí open source softwaru DisplayCAL, v aplikaci Inkscape nastavil zvětšování na 170 % aby 1 cm v Inkscapu byl 1 cm v reálu. Webovou kameru, mikrofon, Wi-Fi a Bluetooth lze na Librem 13 hardwarově vypnout.

Ladislav Hagara | Komentářů: 1
včera 23:44 | Komunita

Několik posledních verzí GNOME Shellu obsahuje chybu způsobující memory leak (únik paměti). Viz například videozáznamy verzí 3.26 nebo 3.28. Nalezení chyby #64 a její opravě se věnuje Georges Basile Stavracas Neto v příspěvku na svém blogu [reddit].

Ladislav Hagara | Komentářů: 0
včera 10:33 | Komunita

V pondělí měl na YouTube online premiéru otevřený krátký 2D film Hero vytvořený v 3D softwaru Blender. Cílem stejnojmenného projektu Hero je vylepšit nástroj Grease Pencil (tužka) v Blenderu 2.8.

Ladislav Hagara | Komentářů: 4
20.4. 23:22 | Nová verze

Byla vydána verze 4.0 kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Přehled novinek v Changelogu (GitHub).

Ladislav Hagara | Komentářů: 0
20.4. 17:22 | Komunita

Včera vydanou hru Rise of the Tomb Raider pro Linux lze do pondělí 23. dubna koupit na Steamu s 67% slevou. Místo 49,99 € za 16,49 €.

Ladislav Hagara | Komentářů: 0
20.4. 16:11 | Komunita

Na Humble Bundle lze získat počítačovou hru Satellite Reign (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 5
20.4. 15:44 | Zajímavý software

Společnost Apple koupila před třemi lety společnost FoundationDB vyvíjející stejnojmenný NoSQL databázový systém FoundationDB (Wikipedie). Včera byl tento systém uvolněn jako open source pod licencí Apache 2.0. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 0
20.4. 15:00 | Nová verze

Po dva a půl roce od vydání verze 5.7 oznámila společnost Oracle vydání nové major verze 8.0 (8.0.11) databázového systému MySQL (Wikipedie). Přehled novinek v poznámkách k vydání. Zdrojové kódy komunitní verze MySQL jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 3
19.4. 14:44 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 151. brněnský sraz, který proběhne v pátek 20. 4. od 18:00 hodin v restauraci Benjamin na Drobného 46.

Ladislav Hagara | Komentářů: 0
19.4. 13:33 | Nová verze

Byla vydána verze 18.04.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi.

Ladislav Hagara | Komentářů: 0
Používáte na serverech port knocking?
 (3%)
 (7%)
 (46%)
 (27%)
 (17%)
Celkem 347 hlasů
 Komentářů: 29, poslední 5.4. 12:25
    Rozcestník

    Dotaz: MySQL a AI

    13.3.2014 13:37 LuRy | skóre: 12
    MySQL a AI
    Přečteno: 381×
    Zdravim, zajimalo by me co se stane kdyz dojdou(pretecou) hodnoty int(11) sloupce na kterym je primarni klic a autoincrement? Za predpokladu ze 90% z "preskocenych" id nebudou vubec existovat? Mam totiz tabulku do ktery zapisuju data tak ze 3 sloupce maji unikatni klic a pri vlozeni duplicitniho radku na zaklade tohoto uniq klice odchatavam vyjimku. Nicmene zpusobuje to to ze se preskakuji id.

    Diky za odpovedi

    Odpovědi

    Tarmaq avatar 13.3.2014 15:34 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: MySQL a AI
    Spadne ti to, Machale..
    Don't panic!
    13.3.2014 16:06 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL a AI
    Si to zkus, už nevložíš.
    mysql> SELECT @@SESSION.sql_mode;
    +----------------------------------------------------------------+
    | @@SESSION.sql_mode                                             |
    +----------------------------------------------------------------+
    | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
    +----------------------------------------------------------------+
    1 row in set (0.00 sec)
    
    mysql> CREATE TABLE tfull (
        ->      id INT NOT NULL AUTO_INCREMENT,
        ->      PRIMARY KEY (id)
        -> ) ENGINE=InnoDB AUTO_INCREMENT = 2147483647;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.00 sec)
    
    mysql> INSERT INTO tfull VALUES();
    ERROR 1062 (23000): Duplicate entry '2147483647' for key 'PRIMARY'
    mysql> DROP TABLE tfull;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql>
    
    Ale řekl bych, že chyba může být i jiného typu...
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    13.3.2014 16:12 blondak | skóre: 36 | blog: Blondak | Čáslav
    Rozbalit Rozbalit vše Re: MySQL a AI
    ale řešení je naštěstí nasnadě:
    MariaDB [test]> CREATE TABLE tfull (
        ->       id INT NOT NULL AUTO_INCREMENT,
        ->       PRIMARY KEY (id)
        ->  ) ENGINE=InnoDB AUTO_INCREMENT = 2147483647;
    Query OK, 0 rows affected (0.06 sec)
    
    MariaDB [test]> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.06 sec)
    
    MariaDB [test]> INSERT INTO tfull VALUES();
    ERROR 167 (22003): Out of range value for column 'id' at row 1
    MariaDB [test]> alter table tfull modify id BIGINT;
    Query OK, 1 row affected (0.06 sec)
    Records: 1  Duplicates: 0  Warnings: 0
    
    MariaDB [test]> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.05 sec)
    
    MariaDB [test]> DROP TABLE tfull;
    Query OK, 0 rows affected (0.06 sec)
    
    Každý problém ma své logické, snadno pochopitelné nesprávné řešení.
    13.3.2014 18:39 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL a AI

    Měl jsi si skusit ten insert provést 2×, pak by jsi si zjistil, že jsi problém nevyřešil, jen jsi vytvořil jiný (na to přijdeš hned, takže ho neodhalím ;-) ).

    A když už jsme u MySQL(MariaDB) a zvolili jsme na začátku INT a ne BIGINT, tak možná je lepší postup viz níže, protože (teoreticky) 2× natáhneme čas dokud nám stačí 32 bit id a tabulka je výrazně menší rychlejší a nepotřebuje tolik paměti (pokud interval po naplnění byl měsíc, tak to nemá význam, ale pokud třeba tři roky, tak je to dost zásadní).
    Já bych postupoval v tomto případě z mezikrokem takto:

    mysql> CREATE TABLE tfull (
        ->   id INT NOT NULL AUTO_INCREMENT,
        ->   PRIMARY KEY (id)
        -> ) ENGINE=InnoDB AUTO_INCREMENT = 2147483647;
    Query OK, 0 rows affected (0.02 sec)
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.02 sec)
    
    mysql> INSERT INTO tfull VALUES();
    ERROR 1062 (23000): Duplicate entry '2147483647' for key 'PRIMARY'
    mysql> ALTER TABLE tfull MODIFY id INT UNSIGNED auto_increment;
    Query OK, 1 row affected (0.03 sec)
    Records: 1  Duplicates: 0  Warnings: 0
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.01 sec)
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.02 sec)
    
    mysql> ALTER TABLE tfull AUTO_INCREMENT = 4294967295;
    Query OK, 3 rows affected (0.01 sec)
    Records: 3  Duplicates: 0  Warnings: 0
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.02 sec)
    
    mysql> INSERT INTO tfull VALUES();
    ERROR 1062 (23000): Duplicate entry '4294967295' for key 'PRIMARY'
    mysql> ALTER TABLE tfull MODIFY id BIGINT auto_increment;
    Query OK, 4 rows affected (0.02 sec)
    Records: 4  Duplicates: 0  Warnings: 0
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.01 sec)
    
    mysql> INSERT INTO tfull VALUES();
    Query OK, 1 row affected (0.02 sec)
    
    mysql> SELECT id FROM tfull;
    +------------+
    | id         |
    +------------+
    | 2147483647 |
    | 2147483648 |
    | 2147483649 |
    | 4294967295 |
    | 4294967296 |
    | 4294967297 |
    +------------+
    6 rows in set (0.00 sec)
    
    mysql> DROP TABLE tfull;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> 
    

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    14.3.2014 08:34 blondak | skóre: 36 | blog: Blondak | Čáslav
    Rozbalit Rozbalit vše Re: MySQL a AI
    Njn, zapomenutý AUTO_INCREMENT a když jsme u toho, tak lze to UNSIGNED použít i u BIGINT ;)
    Každý problém ma své logické, snadno pochopitelné nesprávné řešení.
    14.3.2014 10:35 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: MySQL a AI

    Při milionu insertů za sekundu bude třeba 300tisíc let prp dosažení 9223372036854775807 (BIGINT max.).

    A případné zpracování takové hodnoty/typu (BIGINT UNSIGNED) způsobuje jen (drobné) problémy ve většině jazyků a i v samotném MySQL se už musí s tímto číslem pracovat s přetypováním (implicitní konverze čísel, zjednodušeně funguje jen do rozsahu BIGINT).

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    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.