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 13:44 | Nová verze

Bylo vydáno Ubuntu 17.10 s kódovým názvem Artful Aardvark. Ke stažení jsou Ubuntu Desktop a Server, Ubuntu Cloud Images, Ubuntu Netboot, Kubuntu, Lubuntu a Lubuntu Alternate, Lubuntu Next, Ubuntu Budgie, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio a Xubuntu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
dnes 13:00 | Komunita

MojeFedora.cz informuje, že Fedora 27 dostane podporu pro AAC. Podpora multimediálních formátů je ve výchozí instalaci Fedory tradičně limitovaná kvůli softwarovým patentům, ale desktopový tým Red Hatu se ji i tak snaží v poslední době co nejvíce rozšířit. Už nějaký čas obsahuje kodeky pro MP3, H.264, AC3 a nyní byl přidán také kodek pro další velmi rozšířený zvukový formát – AAC.

Ladislav Hagara | Komentářů: 0
včera 23:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 145. brněnský sraz, který proběhne v pátek 20. října od 18:00 hodin v restauraci Time Out na adrese Novoměstská 2 v Řečkovicích. Jedná se o poslední sraz před konferencí OpenAlt 2017, jež proběhne o víkendu 4. a 5. listopadu 2017 na FIT VUT v Brně. Běží registrace účastníků.

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

Byla vydána verze 5.2.0 multiplatformního virtualizačního nástroje Oracle VM VirtualBox. Jedná se o první stabilní verzi z nové větve 5.2. Z novinek lze zmínit například možnost exportování VM do Oracle Cloudu, bezobslužnou instalaci hostovaného systému nebo vylepšené GUI. Podrobnosti v seznamu změn. Aktualizována byla také dokumentace.

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

Byl spuštěn Humble Down Under Bundle. Za vlastní cenu lze koupit multiplatformní hry The Warlock of Firetop Mountain, Screencheat, Hand of Fate a Satellite Reign. Při nadprůměrné platbě (aktuálně 3,63 $) také Hacknet, Hacknet Labyrinths, Crawl a Hurtworld. Při platbě 12 $ a více lze získat navíc Armello.

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

Google Chrome 62 byl prohlášen za stabilní (YouTube). Nejnovější stabilní verze 62.0.3202.62 tohoto webového prohlížeče přináší řadu oprav a vylepšení. Vylepšeny byly také nástroje pro vývojáře (YouTube). Opraveno bylo 35 bezpečnostních chyb.

Ladislav Hagara | Komentářů: 4
včera 11:00 | Zajímavý článek

Článek (en) na Mozilla.cz je věnován vykreslování stránek ve Firefoxu. V průběhu roku 2018 by se ve Firefoxu měl objevit WebRender, jenž by měl vykreslování stránek urychlit díky využití GPU.

Ladislav Hagara | Komentářů: 5
včera 08:22 | Bezpečnostní upozornění

NÚKIB (Národní úřad pro kybernetickou a informační bezpečnost) informuje o zranitelnosti ROCA v procesu generování RSA klíčů, který se odehrává v softwarové knihovně implementované například v kryptografických čipových kartách, bezpečnostních tokenech a dalších hardwarových čipech vyrobených společností Infineon Technologies AG. Zranitelnost umožňuje praktický faktorizační útok, při kterém útočník dokáže vypočítat

… více »
Ladislav Hagara | Komentářů: 3
včera 01:23 | Zajímavý software

Příspěvek na blogu otevřené certifikační autority Let's Encrypt informuje o začlenění podpory protokolu ACME (Automatic Certificate Management Environment) přímo do webového serveru Apache. Klienty ACME lze nahradit novým modulem Apache mod_md. Na vývoj tohoto modulu bylo uvolněno 70 tisíc dolarů z programu Mozilla Open Source Support (MOSS). K rozchození HTTPS na Apache stačí nově přidat do konfiguračního souboru řádek s ManagedDomain. Minutový videonávod na YouTube [reddit].

Ladislav Hagara | Komentářů: 4
17.10. 14:15 | Komunita

Daniel Stenberg, autor nástroje curl, na svém blogu oznámil, že obdržel letošní Polhemovu cenu, kterou uděluje Švédská inženýrská asociace za „technologickou inovaci nebo důvtipné řešení technického problému“.

marbu | Komentářů: 11
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (11%)
 (1%)
 (1%)
 (1%)
 (74%)
 (13%)
Celkem 95 hlasů
 Komentářů: 5, poslední dnes 07:28
    Rozcestník

    Dotaz: Serióznost MySQL?

    10.10. 13:39 __blr__
    Serióznost MySQL?
    Přečteno: 1222×
    Zdravím,

    hledám vhodnou (pro začátek pokud možno zdarma k použítí) databázi k projektu. Odhadem je max. několik tisíc záznamů přes všechny tabulky (kolem 80). K databázi se bude připojovat webová aplikace (doposud nespecifikována technologie) a program psaný v C/C++ - serverová aplikace.

    Četl jsem několik debat k MySQL. Opravdu je to tak špatná databáze, jak se píše (hlavně na českých fórech)? Nikde jsem nenašel proč by to tak mělo být, ani nějaký rozumný argument.

    Jaké s ní máte zkušenosti, případně s migrací na jinou DB?

    Díky za odpovědi

    Řešení dotazu:


    Odpovědi

    10.10. 14:02 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Mám výbornou zkušenost s MariaDB + výhradně InnoDB/XtraDB tabulky, file per table. 80 tis. řádků zvládne každá DB, máme v DB několik tabulek se stovkami miliónů řádků. Replikace master-slave běží už roky. Nepoužíváme uložené procedury ani triggery, nechci mít byznys logiku namíchanou v javě i v SQL. Ale spoustu projektů to tak úspěšně má.

    Výbornou službu udělá i PostgreSQL. Je čistě na tobě, kterou zvolíš.
    10.10. 14:24 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    MySQL je dobrou databází, která se používá hlavně na webserverech. Nedávno jí však byla změněna licence a je doporučováno přejít na následovníka MariaDB.

    Databází je však spousta druhů. Není jednoduché si mezi nimi vybrat nebo je vhodně zkombinovat. S MariaDB však v uvedeném případu neuděláš chybu.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    10.10. 14:32 a1
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    ne, neni spatna. ale stejne jako neni spatna java ani assebmler, hodi se k necemu vic a k necemu min. Pokud chces spis rychlej datovej sklad je to spravna volba, pokud planujes slozitou logiku v (O)RDBMS vyzkousej PostreSQL...
    10.10. 15:45 [Jooky]
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ja mam v databaze backupvy katalog ... v case, ked som to riesil som tam mal cca 1.8 miliona riadkov ... MySQL databazu som sa snazil naladit ja a neskorsie aj databazovy specialista z enterprise prostedia. Ani jeden zasah nepomahal a vsetko tam trvalo strasne dlho (menili sme velkosti bufferov, pamati, konstrukciu klucov, etc.) ... katalog som presunul do default instalacie PostreSQL a co trvalo desiatky minut, zrazu zbehlo do par sekund. Od kedy je to v PostreSQL, tak ani neviem, ze ta databaza existuje ... predtym som musel stale pustat kadejake optimize a potobne veci, aby ta MySQL databaza ako ta fungovala ...

    ... netusim ci to je sposobom pouzitia, alebo tym backup systemom (bacula), ale v tomto konkretnom pripade ide PostreSQL o hooodne lepsie ako, akokolek naladena MySQL databaza ...
    10.10. 15:57 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Vždy záleží na Use Case. Pro jednoduché dotazy obvykle vychází lépe MySQL, pro komplexní zase PostgreSQL. Pokud někdo hodlá použít nějaký ORM framework, tak asi bude více spokojen s MySQL, protože ho výkon trápit nebude.

    Neuvedl jsi použitý engine. MyISAM někdy mívá podobné vlastnosti, které uvádíš. Aria a InnoDB jsou modernější, tímto neduhem by neměly trpět.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    10.10. 18:20 a1
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    ....databazovy specialista z enterprise prostedia....
    toto bych oznacil za "reseni problemu", pokud existuji enterprise databazovi specialiste na MySQL (kterou navic kdysi koupil SUN za USD1G), asi to s tou serioznosti nebude tak spatne... ;)
    10.10. 15:50 EtDirloth | skóre: 4
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Tiez moze byt zaujimava otazka licencovania a (re)distribucie.

    Pri PostgreSQL tato tema (skoro) uplne odpada.
    10.10. 19:10 karlik
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    MyISAM někdy mívá podobné vlastnosti, které uvádíš. Aria a InnoDB jsou modernější, tímto neduhem by neměly trpět.
    Mohl bys to trochu rozvést? Mám databázi v MyISAM. Pokud bych přešel na InnoDB, bude odolnější v případě "tvrdého" ukončení (např. "zamrznutí PC"), popřípadě bude vyšší pravděpodobnost obnovy?

    Nedávno se mi stalo, že PC komplet zamrzl. Po restartu se vše tvářilo OK, ale v "zamrznutém" PC chyběli nějaké data.

    Přitom vše běží jako master-master (dvě samostatné PC) a synchronizace prostě neproběhla, žádná chybová hláška, nic. Musel jsem druhý "master" zrušit a importovat do něj data z prvního. Přitom druhý "master" funguje jen jako záložní, data se do něj jen synchronizují.
    10.10. 19:25 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Mohl bys to trochu rozvést? Mám databázi v MyISAM. Pokud bych přešel na InnoDB, bude odolnější v případě "tvrdého" ukončení (např. "zamrznutí PC"), popřípadě bude vyšší pravděpodobnost obnovy?
    Ano, InnoDB je stabilnější. Navíc podporuje transakce, což se určitě bude hodit.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    10.10. 19:33 karlik
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Díky.
    okbob avatar 11.10. 06:31 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    MyISAM engine je netransakční - což také znamená, že pokud dojde k havárii a některá data jsou ve write cache, tak o ně přijdete. V dnešní době už by se takový engine vůbec neměl pro jiná než dočasná data (kde to nevadí) používat.
    11.10. 08:01 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Přesně tak. InnoDB/XtraDB jsou dnes u mysql/mariadb základ.
    10.10. 19:41 R
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    MySQL pouzivame roky, teraz uz teda takmer vsade MariaDB. Uz cez to pretieklo par milionov (eur). Funguje to bez problemov.

    Na MySQL nadavaju ludia, co prisli od "velkych" databaz, pretoze ma obmedzene moznosti. Ja zase nadavam na nich, ked im nic poriadne nefunguje a nestaci im ziadny HW.
    10.10. 23:22 OldFrog {Ondra Nemecek} | skóre: 28 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    MySQL/MariaDB se používá zhusta a často slouží bez problémů. Navíc existují použití, kdy je skoro jedno, jakou databázi použijete.

    V porovnání s většími databázemi má ale MySQL/MariaDB řadu omezení a odlišností, které začnou záhy postupně vadit a budete je muset obcházet ne zrovna ideálním způsobem. Jen namátkou jde třeba o absenci sekvencí, možnost mít AUTOINCREMENT jen na jeden sloupec v tabulce, neexistující integritní omezení pro některé enginy, odlišné chování GROUP BY atd.

    Pokud chcete klasickou univerzální sql databázi a nechcete se do budoucna omezovat, šel bych do Postgres. Ocitnete se od hned začátku v „lepší společnosti“ - lepší vývojáři, lepší návyky (samozřejmě v obecném průměru).

    Pak je tuna dalších databází, které se hodí pro speciální použití (sqlite, key-value databáze, objektové databáze atd...).

    Potřebujete hlavně někoho, kdo dokáže posoudit vhodnost databáze pro váš účel.

    Jinak ohledně té MySQL viz též třeba David Karban: MySQL sežere vaše data
    -- OldFrog
    Řešení 2× (Michal Kubeček, Marek Stopka)
    Heron avatar 11.10. 00:08 Heron | skóre: 51 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Jinak ohledně té MySQL viz též třeba David Karban: MySQL sežere vaše data
    Ano, něco podobného jsem taky už kdysi psal.

    MySQL ignoruje příkazy (engine v create table), ignoruje datové typu (do čísla si klidně vložte text), ignoruje špatný konfig (prostě se to spustí bez nějakého engine, třeba toho, co umí transakce, takže to potom ignoruje commit / rollback). Replikace nefunguje (ale máte si ji kontrolovat, to je vaše chyba, že jste přišli o data) a tak dále.

    Prostě MySQL nebrat.
    Získal jsem dojem, že MySQL a PHP patří dobře k sobě.
    Ano, naprosto souhlasím. PHP je na tom stejně blbě jako MySQL. Tohle je php v kostce:
    md5('240610708') == md5('QNKCDZO')
    K původnímu dotazu: doporučuju se mysql vyhnout. Pokud potřebujete SQL db, tak je tu postgresql nebo třeba firebird.
    11.10. 08:08 Miška | skóre: 30 | Praha
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Jinak ohledně té MySQL viz též třeba David Karban: MySQL sežere vaše data
    Ano, něco podobného jsem taky už kdysi psal.

    MySQL ignoruje příkazy (engine v create table), ignoruje datové typu (do čísla si klidně vložte text), ignoruje špatný konfig (prostě se to spustí bez nějakého engine, třeba toho, co umí transakce, takže to potom ignoruje commit / rollback). Replikace nefunguje (ale máte si ji kontrolovat, to je vaše chyba, že jste přišli o data) a tak dále.

    Prostě MySQL nebrat.
    By default, ale u vseho co ignoruje vygeneruje warning a da se nastavit aby misto warningu hazela errory. Oproti PostgreSQL ma vyhodu ve mnozstvi enginu. Takze clovek muze nakombinovat data mezi ruznymi enginy jak potrebuje. Mam neco co je opravdova databazova aplikace s transakcema a paralelnim zapisem? Je tu XtraDB. Mam sber ruznych dat kde transakce nepotrebuju ale mam hromady zaznamu? Je tu Aria. Mam hromadu vyexportovvanych zaloh do kterych se jednou za uhersky rok potrebuju podivat? Je tu CSV engine. Sphinx a spider meli taky nejaky zajimavy vyuziti.

    Takze ve vysledku bych rek ze MariaDB je vyrazne univerzalnejsi a neni to jen jedna SQL databaze, ale co si z toho clovek udela, to ma. Prirovnal bych to k mozna uz staremu srovnani KDE vs Gnome. Bud mate Gnome (PostgreSQL) kde vsechno funguje hezky by default ale pokud se vam neco nelibi, tak mate smulu, nebo mate KDE (MariaDB) s milionem stelovatek kde bud budete mit vsechno hezky potuneny, nebo z toho udelate silenej bastl.

    Takze za me, na 80 tisic radek by mozna stacila i SQLite, takze tady to bude asi burt. Pokud clovek chce dat databazi nakymu databazistovi at si s tim dela co chce, tak bude nadsenejsi z PostgreSQL. Pokud si clovek bude data a aplikaci delat sam a vi ze bude mit ruzny data a nebo ma malo prostredku, tak MariaDB dava smysl.

    Takze MySQL brat. Jen si davat pozor co od toho clovek chce a brat tu odpovidajici cast.
    11.10. 08:33 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Takze clovek muze nakombinovat data mezi ruznymi enginy jak potrebuje.

    Kdyby to bylo per database, tak budiž. Ale to, že mohou v jedné databázi fungovat některé tabulky transakčně a některé ne, osobně považuji za jeden z nejhorších nápadů, o jakých jsem v souvislosti s databázemi slyšel.

    Heron avatar 11.10. 09:26 Heron | skóre: 51 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ve verzi 5.0 a 5.5 uměla MySQL se všema svýma enginama totéž, co uměl PostgreSQL s jedním standardním enginem. Takže zatímco u MySQL člověk musel přemýšlet co konkrétně použít (protože něco umělo transakce a něco jiného zase třeba fulltext a něco třetího zase třeba komprimaci), tak na straně pg se tohle všechno umí by default v jednom engine a ještě k tomu plně ACID. Ale nechci z toho dělat klasické poměřování péra kdo co má a kdo co nemá. Navíc pro mě již MySQL nějakou dobu vůbec neexistuje, takže jak je to ve verzi 10 fakt nevím.
    a da se nastavit
    Ano, tohle je klasická hláška ze světa MySQL. Všechno je vaše chyba, měli jste si to nastavit.

    Znám několik případů, kdy se k vůli mysql přišlo o data. Vím o projektech, kde se po změně na jiný db server přišlo na to, že do VARCHAR(xx) se ukládají výrazně delší texty, než xx, a v db jsou prostě useklé. A data už nejsou. Od kámoše mám info, že někde v nějakém ne zrovna malém projektu a ne zrovna nevýznamném projektu se do číselného sloupce (něco jako flag) ukládaly písmenka. DB si na to nestěžuje, vše funguje. Akorát data nesedí, integrita je narušená. Přišlo se na to až s migrací na postgres (ale tj celkem jedno, to by se zjistilo i při jiných migracích). A odpověď je, že si to mají nastavit. Oni si to nastavili. VARCHAR(20) je svým způsobem nastavení. Pokud to db ignoruje, jakou mám jistotu, že když v konfigu nastavím opravdu_to_kontroluj = pravda to bude fungovat? Potom někdo přijde a řekne, tj tvoje chyba protože musíš zapnout ještě: ano_myslim_to_vazne_chci_kontroly = prosím. (Tohle nemám z MySQL, ale už jsem na to taky u jednoho programu narazil. Dvě konfigurační volby, jedna chtěla boolean a druhá chtěla nějaký slovní token.)
    Takze za me, na 80 tisic radek by mozna stacila i SQLite
    Tohle bych řekl že trochu záleží na tom, co se s těmi záznamy děje. Posuzovat náročnost db podle počtu záznamů nelze. Nehledě na to, že sqlite bude mít trochu výkonnostní problém s paralelním přístupem.
    ale co si z toho clovek udela, to ma
    Ano, s tímto souhlasím. MySQL se dá použít určitým způsobem s velkou výhodou. Ale to vyžaduje poměrně hluboké znalosti toho, na co se to hodí. Tím se ale posouvá na zcela opačný profesní konec, než pro začátečníky, kteří toho moc neví. A ti právě narazí u MySQL na hromadu nečekaných vlastností a nepříjemných překvapení.
    12.10. 00:20 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    takže jak je to ve verzi 10 fakt nevím.
    InnoDB už taky umí fulltext. To je asi tak všechno.
    Quando omni flunkus moritati
    12.10. 09:20 user490
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    A preco do VARCHAR(xx) ukladali data o velkosti > xx a do ciselneho stlpca ukladali stringy?! Ano, spatni programatori sa snazia vyhovarat na technologie, ta pritom fungovala presne podla dokumentacie, chyba bola v ich programe a nie v MySQL.
    12.10. 09:25 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Vy byste se měl přihlásit k nám na nějakou vysokou manažerskou pozici. Tolik člověkohodin vyplýtváme na opravování chyb - a přitom by je stačilo prostě zdokumentovat a bylo by vymalováno.
    12.10. 09:38 Kit
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Aplikace přece netuší, jak široký je sloupeček v databázi. Nemá tedy jak zkontrolovat, že se tam ten string vejde.
    12.10. 15:40 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Aplikace to tušit může, i MySQL poskytuje metadata o databázových objektech. Stačí se podívat na univerzální databázové klienty (např. phpMyAdmin), které ty údaje umí zobrazit a použít.

    Což samozřejmě neznamená, že má databáze nevalidní data tiše ignorovat.
    12.10. 17:27 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Přece se nebudu před každým insertem ptát databáze na její strukturu. Pouze jí sdělím: "Tady máš data a pokud ti nechutnají, tak je vyplivni nebo aspoň řekni, že ti nechutnají."

    Stačí po každém insertu poslat dotaz SHOW WARNIGS; a výsledek se dostaví:
    Warning(1265): Data truncated for column 'name' at row 1
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    12.10. 18:29 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Já jsem nepsal, že to máte dělat. Pouze jsem upozornil na fakt, že „aplikace netuší, jak široký je sloupeček v databázi“ není pravda, protože aplikace to vědět může.
    12.10. 18:56 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Pokud jsou na inserty navázány triggery, tak toho reflexí zas tak moc nezjistíš nebo můžeš obdržet chybné údaje - MySQL pro VARCHAR(60) vrací délku 180, což není ve znacích, ale v bajtech.

    Na reflexi bych se určitě nespoléhal, ani to není "best practice". Tady platí: "Tell, don't ask!"
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    12.10. 23:34 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Pokud ty triggery dělají nějaké další kontroly, tak to v aplikaci opravdu předem nezjistím. Ale to pak zase nevznikne ten problém, že databáze tiše provede něco jiného – protože ten trigger skončí chybou, která se propaguje do aplikace (alespoň nevím o tom, že by MySQL zatloukala i chyby z triggerů). Ale ještě jednou – já souhlasím s tím závěrem, že databáze nemá tiše ignorovat chybný vstup z aplikace, jenom jsme upozornil na to, že argument, kterým jste to chtěl podpořit, není tak docela pravdivý.
    13.10. 08:52 user490
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Přece se nebudu před každým insertem ptát databáze na její strukturu. Pouze jí sdělím: "Tady máš data a pokud ti nechutnají, tak je vyplivni nebo aspoň řekni, že ti nechutnají."
    Tak potom si ale musíš MySQL nastaviť do STRICT mode, databáza nevie čítať tvoje myšlienky, musíš jej konfiguráciou povedať čo chceš.
    13.10. 09:02 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Přesně tak. A řada PHP projektů psaných čuňaty přestane fungovat, protože v insertech neřeší rozdíl mezi číslem a stringem. Ale uznávám, že kdyby jim to mysql od začátku nedovolila, museli by to bývali napsat pořádně.
    13.10. 09:18 Kit
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Nemohu přece za to, že někteří dávají do apostrofů i čísla.
    13.10. 09:52 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    No a to je ten rozdíl mezi MySQL a pořádnou databází - dobré databázi není konfigurací potřeba říkat, co chci, protože funguje správně sama.
    Quando omni flunkus moritati
    13.10. 10:49 user490
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    "funguje správně" pre mňa znamená podľa dokumentácie danej databázy. Pretože "funguje správně" si každý môže vykladať inak.
    13.10. 13:09 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ale to samozřejmě může, ale pokud bude mít jiný výklad než "databáze se chová tak, aby v ní bylo právě to, co do ní uživatel vkládal", je to špatný výklad.
    Quando omni flunkus moritati
    13.10. 13:48 Kit
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    To by nefungoval autoincrement ani timestamp. Dokonce ani triggery by si moc neškrtly.
    dnes 15:05 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Uživatel je autor té aplikace. Pokud si do tabulky dá autoincrement nebo trigger, jsou výsledná data tím, co tam vkládal.
    Quando omni flunkus moritati
    11.10. 08:39 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Záleží, jaké jsou požadavky. To nehlídání constraintů na datový typ je záměrně zapnutá legacy funkcionalita, se kterou bohužel spoustu starších projektů (hlavně v PHP) počítá. Defaultní nastavení v MariaDB > 10.2.3 je již změněné na režim strict, který typy samozřejmě kontroluje. Leč starší PHP projekty od čuňat na tom kolabují a následuje přepnutí do legacy režimu :-(

    Pokud je požadavek na replikaci/clustering (což je dnes docela časté), pak např. firebird moc nepomůže. Jsou instalace (např. naše), kde se nepoužívají složité query a (zcela záměrně) facility nabízené databází (uložené procedury, triggery), ale o to víc je potřeba řešit replikaci/clusterování. Konzistentní klon souborů masteru bez jakéhokoliv omezení jeho provozu pomocí Xtrabackup je triviální, již jsou v něm hned uložené pointery pro nastavení sekundáru. Poté přesunout souborů na jiný stroj, nad ním spoustit db a z pointerů zapnout replikaci - práce na chvíli. Nemusí se nic dumpovat/nalévat, to by u naší 100GB DB chvíli trvalo. Na jeden slave replikujeme z několika produkčních serverů současně (vždy jen jeden master zapisuje), takže je přehození mezi nimi snadné, slave odebírá pořád data od všech. Nečekal jsem, že to bude fungovat tak spolehlivě...

    Nicméně moderní Postgresql 9 má již replikaci taky hezky řešenou, co jsem se koukal. Detaily bohužel neznám...
    11.10. 09:08 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Pokud je požadavek na replikaci/clustering (což je dnes docela časté), pak např. firebird moc nepomůže.

    V tomto případě byl požadavek na replikaci jen workaround na neschopnost databáze udělat zálohu za běhu bez udušení všeho ostatního, takže tam by Firebird s MGA a "levnými" read only snapshoty pomohl docela znatelně. Jinak i pro Firebird existují řešení pro replikaci, ale nejsou open source.

    11.10. 09:39 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    O tomhle požadavku v původním dotazu nic není a tazatel už se dál neozval.

    Pro nás je samozřejmě u replikace klíčová průběžnost, z replikačních slaves lze kdykoliv během dne naklonovat nejaktuálnější data (většinu času je na druhého hopu zpoždění oproti masteru pod 1 sekundu) pro vývoj (po obfuskaci mailů, hesel atd.), v noci se klonují na všechny devel/testovací stroje automaticky.
    11.10. 09:49 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?

    Fráze "v tomto případě" se vztahovala k Heronovu postu, o kterém se v tomto vlákně diskutuje.

    Ale z toho, co píšete v druhém odstavci, to vypadá, že i ve vašem případě je replikace vlastně workaround na absenci levných read only snapshot transakcí.

    11.10. 10:05 dustin | skóre: 61 | blog: dustin
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Replikace slouží k průběžnému přenášení stavu z produkčních serverů jinam, kde si s tím můžeme dělat, co je potřeba. Vývojáři nebudou na produkčních strojích běžících mimo vnitřní firemní síť dělat snapshoty a tahat je k sobě.
    17.10. 09:03 PetrHL | skóre: 16 | blog: petr_h | Neratovice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ve verzi 5.7 je dost věcí jinak. MySQL se posunula směrem k "dospělým" databázím. Stále je tam několik nepříjemností, o který je třeba vědět. Nebrat je hodně silné slovo.

    Možná byste si měl tu PHP kostku trochu přeleštit. Dobře víte, že v PHP se pro porovnávání má používat === a ne ==. Je to vlastnost jazyka. Jsou tam daleko nepříjemnější věci, zrovna toto bych mu fakt nevyčítal.
    "Do, or do not. There is no 'try.'" -- Jedi Master Yoda | CQRLOG | HamQTH
    Heron avatar 17.10. 10:01 Heron | skóre: 51 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    se pro porovnávání
    V tom příkladu je toho špatně mnohem víc. Výstupem md5 hash (pro dané vstupy) je hexa řetězec, který začíná 0e. Tohle php zmate natolik, že si myslí, že řetězec je číslo*, pokusí se ho zkonvertovat, konverze nedopadne dobře, obě "čísla" po konverzi skončí na stejné hodnotě a porovnání to vyhodnotí jako true.

    *) Což ve skutečnosti je, takže by měl porovnávat 128b hodnoty. Výstupem md5 je 128b číslo, ten hexa řetězec je jen převod tohoto čísla do soustavy o základu 16. Rozhodně to není float s exponentem.
    17.10. 10:50 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Příklad je to sice hezký, ale neříká to nic o tom, že je PHP špatné. Má jen jiné vlastnosti než je obvyklé u jiných jazyků.

    O důvod víc, proč nepoužívat MD5 pro ukládání hesel.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Heron avatar 17.10. 11:12 Heron | skóre: 51 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    O důvod víc, proč nepoužívat MD5 pro ukládání hesel.
    Ach jo :-(

    MD5 se pro ukládání hesel neměla používat nikdy. První známky prolomení jsou z roku 1995 (resp. 1993), kompletně prolomeno v roce 2004. Před 13 lety. I kdyby to nebylo, tak je stejně slabá, 128b, díky narozeninovému paradoxu tedy pouze 64b, bylo brute force prolomeno někdy hodně dávno.

    Do roku 2010 bylo možné použít sílu 80b (tedy alespoň 160b kryptografickou hash), potom už jen 112b a pochopitelně větší. Tedy něco jako 224b, takže nejblíže 256b - sha2-256). Dneska už i sha2 není úplně bez poskvrny, takže se používá zúžení sha 256/512 (z sha512 se vezme jen 256b).

    To vše platí za situace, kdy má heslo entropii 112b a víc.

    Pokud ne, je nutné použít PBKDF2 (já osobně je nemám rád, protože nikdo pořádně neví, zda se tím milionem iterací neoslabuje ta funkce samotná, takže doporučuju rovnou používat klíč s dostatečnou entropií).

    Takže asi tak.

    Nehledě na to, že výstup začínající 0e lze získat z libovolné jiné funkce, takže to nefunguje bez ohledu na zvolenou fci.
    17.10. 11:31 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Běžně se však v PHP pro porovnávání používá symbol '===', takže by '0e' na začátku vadit nemělo.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    17.10. 16:06 OldFrog {Ondra Nemecek} | skóre: 28 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Příklad je to sice hezký, ale neříká to nic o tom, že je PHP špatné. Má jen jiné vlastnosti než je obvyklé u jiných jazyků.

    O důvod víc, proč nepoužívat MD5 pro ukládání hesel.
    Rozporováním uvedeného příkladu nedokážete, že je PHP bezproblémové :-) PHP je na tom skutečně asi tak jako Mysql - pokud bych si mohl vybrat, vybral bych u konkurence.
    -- OldFrog
    17.10. 16:26 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Na druhou stranu dokazovat problematičnost nějakého jazyka kódem, který dělá přesně to, co má, taky není úplně košer.
    Quando omni flunkus moritati
    17.10. 13:16 PetrHL | skóre: 16 | blog: petr_h | Neratovice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    To s tím přece nemá nic společného. Pro porovnávání se používá ===, pokud použijete něco jiného, nemůžete se divit, když dostáváte jiné, než očekávané výsledky.
    "Do, or do not. There is no 'try.'" -- Jedi Master Yoda | CQRLOG | HamQTH
    15.10. 12:14 __blr__
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Díky všem za odpovědi!
    16.10. 23:13 Andrej | skóre: 44 | blog: Republic of Mordor | Zürich
    Rozbalit Rozbalit vše Re: Serióznost MySQL?

    Není až tak důležité, zda je MySQL špatná databáze. Otázka je spíš taková: Proč vůbec uvažovat o MySQL, když PostgreSQL je asi tak o sto generací a deset světelných let dál? Pokud hledáš databázi na nový projekt, která s projektem poroste od megabytů na notebooku až do replikovaných petabytů s paralelním vyhodnocováním, odpověď je PostgreSQL. Není třeba hledat nic jiného a není třeba zkoušet napřed polovičaté hračky a pak migrovat jinam. V případě aplikací v C++ PostgreSQL prostě rulezzzzzz.

    ǑǦŹǓǕǙǞǺǨȞȬḔḦḰḾṊṎṸẄẌỖ
    17.10. 07:03 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Podle mne je dost silný důvod to, že MySQL najdete na každém webhostingu s PHP, což se o PostgreSQL zdaleka říct nedá.
    17.10. 07:21 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Nejsem fanda výkřiků typu "rulezzzzzz", ale tohle je naopak hodně slabý důvod. Přesně takovou úvahou se špatná (nebo aspoň neoptimální), ale hojně rozšířená řešení stávají ještě rozšířenějšími nebo dokonce "de facto standardy".
    17.10. 12:59 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Asi si nerozumíme. Nemyslel jsem „silný“ důvod jako „dobrý“ důvod, ale jako „častý“ důvod.
    17.10. 13:58 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    To souvisí s tím, že na každém webhostingu s PHP s velkou pravděpodobností najdete Wordpress (případně něco podobného), který umí pracovat jenom s MySQL. Tím pádem po PostgreSQL není moc poptávka, takže není ani velká nabídka.
    Quando omni flunkus moritati
    17.10. 22:00 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Nikoli, kauzalita je opačná, ty hostingy s PHP existovaly dávno před WordPressem.
    včera 00:25 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Nikoli, o žádné kauzalitě jsem nemluvil, pouze o současném stavu
    Quando omni flunkus moritati
    včera 07:21 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Aha, takže autoři WordPressu se rozhodli podporovat jenom MySQL proto, protože věděli, že se WordPress tak rozšíří. Jinak třeba Drupal umí PostgreSQL, Joomla též, také phpBB… Pokud jste nemluvil o kauzalitě, pak nechápu, proč jste vůbec odpovídal – diskuse byla právě o ní. Diskuse byla o příčině, proč je MySQL tak rozšířená, a vy jste místo příčiny uvedl důsledek.
    včera 11:40 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    To já nevím, proč se autoři Wordpressu rozhodli tak, jak se rozhodli. Co umí Drupal a Joomla bude relevantní ve chvíli, kdy nebudou mít o řád nižší podíl na trhu než Wordpress. A že to umí ještě neříká, kolik lidí to používá a tedy jak moc je to zabugované.
    Diskuse byla o příčině, proč je MySQL tak rozšířená, a vy jste místo příčiny uvedl důsledek.

    Jste na omylu, já uvedl pouze to, jaký je současný stav. V současném stavu je MySQL u PHP webhostingů tak rozšířená proto, že málokterý CMS podporuje něco jiného a nejvýznamnější CMS nepodporuje nic jiného. K tomu, jak se k tomuto stavu došlo, jsem se nevyjadřoval.

    A jestli máte za to, že diskuze byla o příčině, tedy o něčem, co se odehrálo v minulosti, možná jste cokoliv o minulosti měl zmínit dřív než v #55, abychom to věděli i my ostatní, co nežijeme ve vaší hlavě.
    Quando omni flunkus moritati
    včera 13:30 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ano, uvedl jste svůj mylný názor na to, proč je současný stav takový, jaký je. Skutečný stav je takový, že drtivá většina OSS webových aplikací napsaných v PHP, které potřebují databázi, podporuje alespoň MySQL, protože je MySQL tolik rozšířená u PHP webhostingů.
    včera 15:10 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Že vy jste si vybral jednu půlku té kladné zpětné vazby, která se vám víc líbila, ještě neznamená, že je to skutečný stav.
    Quando omni flunkus moritati
    včera 15:51 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Já jsem si jí nevybral a nepsal jsem to proto, že by se mi víc líbila, ale proto, že je to skutečný stav. PHP+MySQL kralovalo webhostingům už koncem minulého století, kdy v té vaší zpětné vazbě způsobené WordPressem poněkud chyběl ten WordPress.
    včera 17:15 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    To je klidně možné, ale minulé století tu bylo před skoro 20 lety, narozdíl od mnoha dnes existujících webhostingů.
    Quando omni flunkus moritati
    včera 19:42 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Nebylo by špatné udělat PostgreSQL nějakou propagaci. My ostatní si vystačíme s databází MySQL, kterou najdeme téměř všude a která splňuje naše požadavky.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    včera 20:45 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ovšem těch 20 let determinovalo, jaký je současný stav. Zatímco před dvaceti lety byl linuxový webhosting prakticky výhradně PHP+MySQL, dnes už se najdou hostingy, které nabízejí PostgreSQL, Python, Node.JS a spoustu dalšího. Spousta aplikací se přesunula z webhostingů na VPS. Takže se dostáváme zpět k tomu, že odpověď na otázku, proč dnes uvažovat o MySQL, je ta, že z historických důvodů, které sice slábnou, ale stále jsou dost silné, je PHP+MySQL dostupné skoro na každém webhostingu. Takže pokud chce někdo napsat webovou aplikaci, kterou bude možné provozovat na co největším množství hostingů, sáhne právě po PHP+MySQL. No a když už je takhle omezený tím, co umí MySQL, PostgreSQL mu toho moc nepřinese, protože aby to mohl rozumně ukočírovat, musí i z PostgreSQL používat jen málo věcí, které umí i MySQL, a zbytek řešit v aplikaci.
    dnes 15:07 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Ovšem těch 20 let determinovalo, jaký je současný stav.
    To je klidně možné, ale nijak to nerozporuje moje tvrzení o tom, jaký ten současný stav je.
    Quando omni flunkus moritati
    Josef Kufner avatar včera 22:40 Josef Kufner | skóre: 67
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    MySQL se před těmi cca 15 lety prosadilo kvůli tomu, že má nízkou vstupní bariéru pro programátory začátečníky a také bylo nejrychlejší, i za cenu zahození transakcí a podobných "zbytečností", neboť tehdy ta trocha výkonu navíc byla znát (tedy alespoň na benchmarku).

    S tou nízkou vstupní bariérou to je tak, že MySQL bylo vždy docela snadné rozchodit. Nainstalovalo se to, spustilo se to, vyrobil se uživatel s databází a nějak to fungovalo. Tím, že to nic moc neumělo, tak to prostě bylo snadné. PostgreSQL přeci jen už chtělo, aby uživatel-programátor tak nějak věděl, co dělá a co vlastně chce. A když už to spustil, tak toho na něj vyskočilo docela dost a teď co s tím.

    A co si budeme nalhávat, weby potřebují v 90% případů jen CRUD na 4 SQL dotazy (C = Insert, R = select, U = update, D = delete). SQL databáze pak přinesla (relativně) spolehlivý a jednoduchý způsob ukládání dat, se kterým je mnohem méně práce než se soubory. Proto taky měla MySQL fulltext snad i dřív než cizí klíče.
    Hello world ! Segmentation fault (core dumped)
    včera 23:17 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Navíc pokud někdo používá PostgreSQL, často už o databázích aspoň něco málo ví. A může mít nepříjemné otázky, jako proč má hosting něco nastavené takhle nebo proč má ta databáze tak nízký výkon v porovnání s nějakým referenčním prostředím. Když se nelíbí výkon uživateli MySQL, je mnohem pravděpodobnější, že si bude stěžovat jenom „je to pomalé“ a akceptuje odpověď hostingu „pořiďte si vyšší tarif“.
    dnes 07:21 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    S tou nízkou vstupní bariérou to je tak, že MySQL bylo vždy docela snadné rozchodit.

    Mně tam naopak některé věci (třeba kolem autentizace) přišly zbytečně komplikované. Ale pravda, když se to porovnává s PostgreSQL, tak to je samozřejmě jiná liga.

    17.10. 22:46 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Na primitivní dotazy ORM frameworků odpovídá MySQL obvykle o něco rychleji. Kvalita PostgreSQL vynikne až u komplexních dotazů.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    včera 00:33 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Na primitivní dotazy ORM frameworků odpovídá MySQL obvykle o něco rychleji.
    Což ale pořád nevykompenzuje fakt, že je to kopa hnoje.
    Quando omni flunkus moritati
    včera 01:06 Kit | skóre: 38 | Brno
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Budeš s tím svým faktem něco dělat nebo se s ním smíříš?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    včera 01:37 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Na svoje věci používám Postgres, do čeho z vlastní vůle šlapou ostatní, to mi je vcelku jedno
    Quando omni flunkus moritati
    Marek Stopka avatar 17.10. 18:00 Marek Stopka | skóre: 57 | blog: Paranoidní blog | London, United Kingdom
    Rozbalit Rozbalit vše Re: Serióznost MySQL?
    Oracle?
    včera 20:52 Andrej | skóre: 44 | blog: Republic of Mordor | Zürich
    Rozbalit Rozbalit vše Re: Serióznost MySQL?

    Na to se dá říct asi tak jediné: PostgreSQL je tady. Kde na GitHubu najdu Oracle? Nějak ho tam nevidím…

    ǑǦŹǓǕǙǞǺǨȞȬḔḦḰḾṊṎṸẄẌỖ

    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.