Dnes jsem predstavujú pohodlnej polohy pre úsporu nosri zautomatizovalo databázy mysql databázy, v dodatku k pôvodnému skriptu môže byť pridaná na konci roka na záchranu a kompresie jednotlivých databáz v niekoľkých riadkov kopírovanie na vzdialený server a okná v našej správy e-mail.
#! / Bin / bash
# Shell skript na zálohovanie databázy MySQL
# Ak chcete zálohovať súbory do databázy Nysql / backup dir a neskôr vyzdvihnúť vaše
Script #. Môžete preskočiť niekoľko databáz zo zálohy príliš.
# Pre viac info pozri (Inštalácia info):
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Posledná aktualizácia: august - 2005
# -----------------------
# Toto je slobodný shell skript pod GNU GPL verzie 2.0 alebo vyššej
# Copyright (C) 2004, 2005 nixCraft projektu
# Ohlasy / pripomienky / návrhy: http://cyberciti.biz/fb/
# -------------------------
# Tento skript je súčasťou nixCraft shell skript kolekcia (NSSC)
Navštívte # http://bash.cyberciti.biz/ pre viac informácií.
# Aktualizované September - 2007 by CyberTek - http://www.cybertek.it
# -------------------------
Myuser = "SET-mysql-user-NAME" # USERNAME
Mypass = "-SET PASSWORD" # PASSWORD
MyHOST = "localhost" # Hostname
# Linux bin ciest, zmena, ak ju nemožno autodetected, cez ktorý príkaz
MYSQL = "$ (čo mysql)"
Mysqldump = "$ (čo mysqldump)"
Chown = "$ (čo chown)"
Chmod = "$ (čo chmod)"
GZIP = "$ (čo gzip)"
# Záložné Desta adresára zmeniť, ak máte someother umiestnenie
DEST = "/ backup"
# Hlavná adresár, kde sa budú zálohy ukladať
MBD = "$ DEST / mysql"
# Get hostname
HOST = "$ (hostname)"
# Get údajov v dd-mm-rrrr formát
NOW = "$ (dátum +"% d -% m -% Y ")"
# Súbor pre ukladanie aktuálnu zálohu file
FILE = ""
# Uchovávajte Zoznam databáz
DBS = ""
# DON'T BACKUP týchto databáz
Iggy = "test"
[- D $ MBD] & & mkdir - p $ MBD | |:
# Len root môže prístup je!
Chown $ 0.0 - R $ DEST
$ Chmod 0600 $ DEST
# Get prvý zoznam všetkých databáz
DBS = "$ ($ mysql-u myuser-h $ $ $ MyHOST-p-mypass BSE 'show databázy')"
za $ db v DBS
robiť
skipdb = - 1
if [ "$ iggy!" = ""];
potom
pre i in $ iggy
robiť
[ "$ Db" = = "$ i"] & & skipdb = 1 | |:
hotovo
Florencia
if [ "$ skipdb" = = "-1"]; potom
FILE = "$ MBD / $ db. $ HOST. NOW.gz $"
# Do všetkých Inönü prácu v potrubí,
# Pripojenie k MySQL pomocou mysqldump pre zvolenie mysql databázy
# A pipe to na gz súbor zálohy dir:)
$ Mysqldump - u myuser $ - $ MyHOST h - p $ $ db mypass | GZIP $ - 9> $ FILE
Florencia
hotovo
# Kopírovanie na vzdialený server
echo'******************* Example_Backup *******************'> / root / mybackup.txt
echo \>> / root / mybackup.txt
dátum>> / root / mybackup.txt
echo \>> / root / mybackup.txt
'********************* Detaily *********************' echo>> / root / mybackup.txt
# Pamätať, že scp príkaz nemožno zadať heslo, ak ste schválila kľúčový pre cieľový systém
# Inak budete musieť robiť
scp / backup / mysql / * root@example.dom: / home / backup / example / mysql /
oh-ls / backup / mysql />> / root / mybackup.txt
echo'************************************************ * '>> / root / mybackup.txt
# Odoslať email so správou o vykonanej práci
mail-s "Príklad Zálohovanie" example@example.dom </ root / mybackup.txt
# Odstrániť po nahrání
rm-f / backup / mysql / *
Samozrejme, že výrobok nie je v pozícii, aby súťažiť s potenciálnymi phpMyAdmin, ale voltela jednoduchosť a ľahkosť nostromotivo by mohla byť voľba. Ak by sme intragrare MySQL klient cez web snáď môžeme sa obrátiť na tento produkt. Ak chcete prejsť na mieste sidu nájdete tu.
- Triedenie a filtrovanie databázových tabuliek.
- Možnosť pripojiť k hostiteľovi a miestnej a vzdialenej databázy.
- Bezpečný prístup na zabránenie neoprávnenému prístupu k údajom.
- Práca s používateľmi a viac súbežných relácií.
- Caching db a tabuľky, ktoré umožnia rýchle zobrazenie.
Published in: mysql, tipy, www Nie je čas si pohovoriť o tom, ako vytvárať tabuľky optimalizované pre lepšie výsledky. Pamätám si len, že pole indexovaný zlepšiť oveľa čas realizácie. Diskusia namiesto niektorých malý trik, aby efektívnejšie MySQL, ktorá obvykle prichádza inštalovaný na väčšine distro bez mnohých parametrov pre ladenie. Info pozri linuxové distro, ale môžu byť ľahko použité na iné OS.
Konfiguračný súbor je zvyčajne v / etc / my.ini.
Eempio z my.ini:
[mysqld]
datadir = / var / lib / mysql
socket = / var / lib / mysql / mysql.sock
set-premenná = key_buffer = 64M
set-premenná = max_user_connections = 100
set-premenná = query_cache_size = 64M
# Implicitná na použitie staré heslo formát pre kompatibilitu s MySQL 3.x
# Klienti (ty pomocou mysqlclient10 kompatibilita balík).
old_passwords = 1
[mysql.server]
user = mysql
basedir = / var / lib
[mysqld_safe]
err-log = / var / log / mysqld.log
pid-file = / var / run / mysqld / mysqld.pid
pufre: bufferi akéhokoľvek incremeto dostanete databázy oveľa rýchlejšie. Nastavte pufre založené na veľkosť pamäte je k dispozícii, s prihliadnutím na spotrebu, ktoré operačný systém a ďalšie aplikácie a služby v prevádzke. Ak si rozdeliť príliš veľa pamäte a zároveň nemajú ustanovenie môže vběhnout do celkového výkonu systému.
Wait_timeout: je čas, ktorý uplynie, kým bude uzavretá automaticky pripojiť k MySQL z dôvodu nečinnosti. Nižšie číslo je lepší výkon. V tomto prípade musíte tiež hrať druh spojenia a ich údajnej čas pre kalibráciu najvýhodnejšie parameter.
back_log: určuje, ako veľa súčasných pripojení môže udržať MySql a zároveň vytvára nové vlákno. Čím nižšie číslo, tým vyššia rýchlosť. Pozor, je to ľahké nebude zhoršovať funkciu by tento parameter nastaviť správne, použite len v prípade, že je absolútne nevyhnutné.
Max_user_connections: Nastaví maximálny počet povolených spojení s užívateľmi. To je veľmi užitočné v systémoch, kde na rovnakom serveri MySQL užívatelia majú prístup súčasne.
Delayed_queue_size: počet riadkov spolu s INSERT omeškaná. Menej sa pozdĺž línie, tým rýchlejšie MySQL.
Sort_buffer_size: nastaví veľkosť bufferu pridelené na realizáciu ORDER BY klauzula a GROUP BY klauzula. Ak chcete, aby otázky efektívnejšie je tento parameter nastavený na hodnotu vyššiu ako 2m.
Table_cache: určuje počet otvorených tabuliek pre všetky vlákna, zvýšenie tejto premennej zvýši stoly naložené súčasne a vykonanie MySql bude oveľa rýchlejšie. Pozor na tento parameter, operačné systémy majú limit odkazy na súbory otvorené naraz, ak si tento limit prekročíte vám môžu vzniknúť v akomkoľvek systéme závadu.
Thread_cache_size: Nastavuje počet závitov uchovávať v cache. Táto vlastnosť umožňuje použitie vlákien veľmi rýchlo.
Zobraziť ŠTATÚTU príkaz nám pomáha sledovať v reálnom čase tie premenné, ktoré viac ako ostatné, aby nám pomohli pochopiť, čo sú najvýznamnejšie vylepšenia môžeme urobiť:
Handler_read_first: Udáva, koľkokrát sa prvý záznam bol čítať z tabuľky. Ak sa toto deje, často to znamená, že v tabuľke nebol indexovanými správne.
Innodb_buffer_pool_wait_free: udáva, koľkokrát že MySQL má počkať na splachovanie stránok pamäte. Ak je návratová hodnota je vysoká, potom veľkosť bufferu bazén nebol správne nakonfigurovaný pre výške zápisnice, ktorým prešlo server.
Key_reads: udáva, koľkokrát MySQL, že prístup k systému súborov pre databázové indexy. Tým sa spomaľuje rýchlosť vybavovanie dotazov, takže ak je táto hodnota vysoká potom to znamená, že kľúčové pufra je príliš malý, a mal by byť zvýšený.
Max_used_connections: Označuje maximálny počet pripojení, ktorá MySQL musela otvoriť počas posledného štarte. Na jednu stranu je to pravda benchmark (pomáha rozhodnúť, maximálny počet pripojení k serveru môže podporovať) a druhý je prezentovaný ako pohodlný prevádzka analyzátora.
Open_tables: Označuje aktuálny počet otvorených tabuliek. Táto hodnota by mala byť analyzovaná v kombinácii s pamäť veľkosť tabuľky. Zvyčajne sa veľkosť table_cache je potrebné nastaviť vyššie u tejto premennej. Ak je hodnota open_tables je oveľa nižšia ako table_cache aby nedochádzalo k problémom s výkonom, preto je tiež znížiť veľkosť vyrovnávacej pamäte. Ak je hodnota open_tables je veľmi vysoká a blíži veľkosti cache, potom ju zvýšiť table_cache.
- Select_full_join: Počet plnú pripojiť MySQL vykonal, aby zodpovedali požiadavkám klienta. A vysoká hodnota naznačuje, že miesto pomocou indexov, MySQL bola nútená vykonať úplnú pripojiť. To naznačuje, že je potrebné pre silnú index týchto tabuliek.
Slow_queries: udáva počet dotazov, ktoré trvalo dlhšie ako zvyčajne, je potrebné urobiť. Vysoká hodnota by mala viesť nás k analýze Pomalé Prihlásiť dotazu zistiť, aké sú pomalé dotazu na optimalizáciu.
Threads_connected: Označuje celkový počet klientov, ktorí sú pripojení k serveru v takejto chvíli.
Created_tmp_disk_tables: udáva počet dočasných tabuliek, ktoré boli vytvorené na disku miesto pamäti. Vzhľadom k tomu, že prístup do tabuliek na disku je zvyčajne pomalší ako v pamäti, že obsah premennej bude úmerná rýchlosti, s otázkami, ktoré sú spustené na príkaz CREATE dočasnú tabuľku.
- Uptime: Zobrazuje, koľko sekúnd sa na servis.
Published in: mysql, tipy