Wysłany przez: admin (zestaw 21) Dzisiaj przedstawiam przydatne bazy danych rozszerzonej automatycznego zapisywania nosri bazy mysql, w dodatku do oryginalnego skryptu można dodać na końcu ratowanie i kompresję poszczególnych baz danych w kilka linii kopii na serwerze i okna komunikatu w raporcie e-mail.
# / Bin / bash
# Skrypt powłoki do tworzenia kopii zapasowych bazy danych MySQL
# Aby utworzyć kopię zapasową bazy danych Nysql plików do / backup katalogu, a następnie odebrać przez
# Script. Niewiele można pominąć baz danych z kopii zapasowej za.
# Więcej informacji można znaleźć (info instalacji)
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Ostatnia aktualizacja: Aug - 2005
# -----------------------
# To jest wolny skryptów powłoki pod GNU GPL w wersji 2.0 lub nowszy
# Copyright (C) 2004, nixCraft projektu 2005
# Opinii / uwag / sugestii: http://cyberciti.biz/fb/
# -------------------------
# Skrypt ten jest częścią skryptu nixCraft kolekcji shell (NSSC)
# Http: / / bash.cyberciti.biz / Więcej informacji można uzyskać.
# Zaktualizowano Wrz - 2007 by Cybertek - http://www.cybertek.it
# -------------------------
Mójużytkownik = "SET-mysql-nazwę użytkownika" USERNAME #
Mojehas = "SET-" hasło #
Mojkomputer = "localhost" # Hostname
# Linux bin ścieżki, zmienić, jeśli nie może być automatycznie wykrywany przez którego polecenia
MYSQL = "$ (co mysql)"
Mysqldump = "$ (co mysqldump)"
Chown = "$ (co chown)"
CHMOD = "$ (co chmod)"
GZIP = $ (co gzip) "
# Backup Dest, to zmienić, jeśli masz someother lokalizacji
CEL = "/ backup"
# Główne WHERE backup będą przechowywane
MBD = "$ docelowy / mysql"
# Pobierz hostname
HOST = "$ (hostname)"
# Pobierz datę w-mm-rrrr DD
TERAZ = "$ (date +% d -% m -% Y") "
# Plik, aby zapisać bieżący plik kopii zapasowej
FILE = ""
# Lista Store baz danych
DBS = ""
# NIE BACKUP Te bazy danych
IGGY = "test"
[! - D $ MBD] & & mkdir - p $ MBD | |:
# Tylko root może z niego korzystać!
Chown 0,0 dolarów - R $ DEST
CEL $ chmod 0600 dolarów
# Pobierz wszystkie listy pierwsza baza danych
DBS = "$ ($ mysql-u-h myuser $ $ mojkomputer-p mojehas-BSE" show $ bazy danych ")"
do w $ db DBS
C
skipdb = - 1
if ["$ IGGY! =" "];
następnie
for i in $ IGGY
C
["$ Db" = "$ i"] & & skipdb = 1 | |:
Sporządzono
fi
if ["$ skipdb" = "-1"] then
FILE = "$ MBD / $ db. $ HOST. NOW.gz $"
# Czy wszystkie inone pracy w rurach,
# Połącz się za pomocą mysql mysqldump do wyboru bazy mysql
# I to na zewnątrz rury gz pliku kopii zapasowej w katalogu:)
$ Mysqldump - $ u mójużytkownik - h mojkomputer $ - $ p mojehas $ db | $ GZIP - 9> $ FILE
fi
Sporządzono
# Skopiuj na zdalnym serwerze
echo'******************* Example_Backup *******************'> / root / mybackup.txt
echo \>> / root / mybackup.txt
data>> / root / mybackup.txt
echo \>> / root / mybackup.txt
Szczegóły *********************''********************* echo>> / root / mybackup.txt
# Pamiętaj, że polecenie scp nie można określić hasło, jeśli usunięciu klucza w systemie docelowym
# W przeciwnym razie nie
scp / backup / mysql / root@example.dom *: / home / backup / przykład / mysql /
oh-ls / backup / mysql />> / root / mybackup.txt
echo'************************************************ * ">> / root / mybackup.txt
# Wyślij e-mail ze sprawozdaniami z wykonanych prac
mail-s "Przykład Backup" <example@example.dom / root / mybackup.txt
# Usuń po wgraniu
rm-f / backup / mysql / *
Opublikowano w: rozwój , mysql , skrypty , porady Wysłany przez: admin (3 lipca) Oczywiście produkt nie został jeszcze powiększony do konkurowania o władzę z phpMyAdmin, ale prostota i lekkość voltela można nostromotivo wyboru. Jeśli intragrare mysql internetowej może uda nam się włączyć do tego produktu. Aby przejść do strony kliknij Sidu tutaj .
- Sortowanie i filtrowanie w tabelach bazy danych.
- Możliwość podłączenia do komputerów lokalnych i zdalnych baz danych.
- Bezpieczny dostęp do ochrony przed nieuprawnionym dostępem do danych.
- Praca z wielu jednoczesnych użytkowników i sesji.
- Db buforowania i tabel, aby umożliwić szybkie widzenia.
Opublikowano w: mysql , porady , www Wysłany przez: admin (19 czerwca) Nie mów teraz o tym, jak tworzyć tabele zoptymalizowane dać lepsze wyniki. Pamiętam tylko, że indeksowane pola znacznie poprawić czas realizacji. Będziemy rozmawiać zamiast niewielkich środków w celu poprawy wydajności, MySQL jest zazwyczaj instalowany w większości dystrybucji bez większych parametrów. Informacje odnoszą się do dystrybucji Linuksa, ale mogę być łatwo dostosowane do innych OS.
Plik konfiguracyjny jest zazwyczaj w / etc / my.ini.
Eempio z my.ini:
[Mysqld]
datadir = / var / lib / mysql
socket = / var / lib / mysql / mysql.sock
set-variable = klucz bufor = 64M
set-variable = max_user_connections = 100
set-variable = query_cache_size = 64M
# Domyślnie do korzystania starym formacie hasło pod kątem zgodności z mysql 3.x
# Klienci (mysqlclient10 korzystających z pakietu zgodności).
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
bufory: poprzez zwiększenie bufora z dowolnej bazy danych będzie się znacznie szybciej. Następnie ustawić buforów na podstawie ilości dostępnej pamięci, biorąc pod uwagę zużycie przez system operacyjny i inne aplikacje i usługi do użytku. Jeśli przydzielić za dużo pamięci, choć nie są dostępne, mogą Państwo uruchomić na pogorszenie ogólnej wydajności systemu.
Wait_timeout: oznacza czas, jaki upływa, zanim połączenie zostanie automatycznie zamknięta z powodu braku aktywności Mysql. liczba Dolna oznacza lepszą wydajność. W tym przypadku należy także grać ten rodzaj połączeń i ich szacunkowy okres użytkowania na lepsze kalibracji parametrów.
back_log: kontroluje liczbę jednoczesnych połączeń może wytrzymać MySQL przy tworzeniu nowych wątków. Im niższy numer, tym większa prędkość. Uwaga Nie jest łatwo zmniejszyć wydajność poprzez ustawienie tego parametru poprawnie, to tylko wtedy, gdy jest to absolutnie konieczne.
Max_user_connections: określa maksymalną liczbę jednoczesnych połączeń dozwolonych dla użytkownika. Jest to bardzo przydatne dla systemów które mają dostęp do tego samego serwera MySQL wielu użytkowników jednocześnie.
Delayed_queue_size: liczbę wierszy załączonym INSERT z opóźnieniem. Mniej wierszy zostanie dołączona, tym szybciej Mysql.
Sort_buffer_size: Ustaw rozmiar bufora w celu wykonania klauzul ORDER BY i GROUP BY. Do najbardziej skutecznych zapytanie, powinny tego parametru na wartość większą niż 2 MB.
Table_cache: kontrola liczby otwartych tabel wszystkie posty, wzrost tej zmiennej, tabele ładowane jednocześnie zwiększenie wydajności MySQL jest o wiele szybszy. Uwagę na ten parametr, systemy operacyjne mają limit odnośniki do plików można otworzyć jednocześnie, jeśli przekracza ten limit może ponieść anomalii.
Thread_cache_size: określa liczbę wątków, w celu utrzymania w pamięci cache. Funkcja ta sprawia, że korzystanie z wątków bardzo szybko.
Polecenie show Stan pomaga monitorować w czasie rzeczywistym, takie zmienne, że większość innych pomagają nam zrozumieć, jakie są najbardziej znaczące ulepszenia możemy:
Handler_read_first: ile razy pierwszy rekord został odczytany z indeksu w tabeli. Jeśli tak się dzieje często, to znaczy, że tabela nie została prawidłowo indeksowane.
Innodb_buffer_pool_wait_free: ile razy MySQL musi poczekać na uderzenia gorąca stron pamięci. Jeśli wartość jest duża, wielkości puli buforów nie została poprawnie skonfigurowana na kwotę poddane operacji zapisu przez serwer.
Key_reads: wskazuje, ile razy system dostępu do pliku bazy danych MySQL indeksów. To spowalnia prędkość wykonywania zapytania, więc jeśli ta wartość jest duża, to znaczy, że klucz Bufor jest zbyt mały i powinien zostać zwiększony.
Max_used_connections: określa maksymalną liczbę połączeń MySQL musiał być otwarte jednocześnie w ciągu ostatnich boot. Pierwszy to prawdziwy punkt odniesienia (pozwala określić maksymalną liczbę połączeń na serwer obsługuje), a drugi jest przedstawiony jako praktyczne analizator ruchu.
Open_tables: Wskazuje aktualną liczbę otwartych tabel. Wartość ta powinna być analizowane w połączeniu z cache tabeli. Zwykle wielkości table_cache może być większa niż wartość tej zmiennej. Jeżeli wartość jest znacznie niższa niż table_cache open_tables, aby uniknąć problemów z wydajnością, powinny zmniejszyć rozmiar pamięci podręcznej. Jeżeli wartość open_tables jest bardzo wysoki, w pobliżu cache powinien następnie wzrost table_cache.
- Select_full_join: liczbę pełnych dołączyć MySQL przeprowadzanych w celu spełnienia żądań klienta. Wysoka wartość wskazuje, że zamiast indeksów, MySQL został zmuszony do przeprowadzenia pełnego przyłączyć. Sugeruje to potrzebę silnej indeks tych tabel.
Slow_queries: Liczba zapytań, które miały więcej czasu niż zwykle do wykonania. Wysokiej wartości powinno prowadzić nas do analizy Slow Query Log ustalenie tego, co wolno w celu optymalizacji zapytań.
Threads_connected: Łączna liczba klientów, którzy są podłączeni do serwera w takiej chwili.
Created_tmp_disk_tables: Liczba tabel tymczasowych, które zostały utworzone na dysku zamiast z pamięci. Biorąc pod uwagę, że tabele dostępu do operacji na dysku jest wolniejsze niż w pamięci zawartość zmiennej jest odwrotnie proporcjonalna do prędkości, z jaką są wyświetlane zapytania CREATE tabeli tymczasowej.
- Uptime: Informuje, ile sekund usługa jest aktywna.
Opublikowano w: mysql , porady