Preskočiť na obsah

Linux

Paralelné komprimovanie a dekomprimovanie s pbzip2

logo bzip2

Ak zvyknete komprimovať a dekomprimovať veľké objemy dát, možno sa vám bude hodiť nasledujúci tip, ako nahradiť bzip2 kompatibilnou alternatívou pbzip2. Bzip2 umožňuje dosiahnuť výborný kompresný pomer, ale je pomerne pomalý.

pbzip2 je paralelná implementácia blokového bzip2 triediaceho kompresného algoritmu, ktorá používa vlákna na zrýchlenie kompresie a dekompresie na SMP systémoch. Výstup je plne kompatibilný s bzip2 verziou, čiže hocičo skomprimované s pbzip2 je možné dekomprimovať s bzip2.

Upgrade MySQL v Debiane rozbije master-master replikáciu

Pri poslednom upgrade domácej farmy (laptop, router, storage, …) sa mi stala nemilá vec. Prestala mi fungovať MySQL MASTER-MASTER replikácia medzi laptopom a domácim serveríkom, ktorú použǐvam najmä kvốli zálohovaniu dát. Stav vyzeral nasledovne, rovnaká chyba na oboch stranách:

(root@localhost) [(none)]> SHOW SLAVE STATUS \G
...
Slave_IO_Running: Yes
Slave_SQL_Running: No
...
Last_Error: Error 'You cannot 'ALTER' a log table if logging is enabled' on query. Default database: 'mysql'. Query: 'ALTER TABLE slow_log
MODIFY start_time TIMESTAMP NOT NULL,
MODIFY user_host MEDIUMTEXT NOT NULL,
MODIFY query_time TIME NOT NULL,
MODIFY lock_time TIME NOT NULL,
MODIFY rows_sent INTEGER NOT NULL,
MODIFY rows_examined INTEGER NOT NULL,
MODIFY db VARCHAR(512) NOT NULL,
MODIFY last_insert_id INTEGER NOT NULL,
MODIFY insert_id INTEGER NOT NULL,
MODIFY server_id INTEGER UNSIGNED NOT NULL,
MODIFY sql_text MEDIUMTEXT NOT NULL'
...

Riadky Slave_IO_Running a Slave_SQL_Running hovoria o tom, že jedna časť replikácie beži (Slave_IO = sťahovanie binárneho logu z druhej strany funguje), ale druhá nie. Slave_SQL teda znamenal, že stiahnutý binárny log sa neinterpretoval.