Ταχυδρομημένος από: admin (Sep 21) Σήμερα σας παρουσιάζω μια άνετη θέση για την αυτοματοποίηση των δεδομένων εξοικονόμησης nosri mysql βάση δεδομένων, μαζί με το αρχικό σενάριο μπορεί να προστεθεί στο τέλος της διάσωσης και της συμπίεσης των επιμέρους βάσεις δεδομένων σε λίγες γραμμές το αντίγραφο σε έναν απομακρυσμένο server και ένα μήνυμα θέση στην έκθεσή μας email.
#! / Bin / bash
# Shell σενάριο για backup βάσης δεδομένων MySQL
# Για να backup των βάσεων δεδομένων σε αρχεία Nysql / backup dir και αργότερα ανάκαμψη από το
# Script. Μπορείτε να παραλείψετε μερικές βάσεις δεδομένων από το αντίγραφο ασφαλείας υπερβολικά.
# Για περισσότερες πληροφορίες παρακαλούμε δείτε (info εγκατάστασης):
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Τελευταία ενημέρωση: Αύγουστος - 2005
# -----------------------
# Αυτό είναι ένα δωρεάν κέλυφος σενάριο σύμφωνα με την GNU GPL έκδοση 2.0 ή παραπάνω
# Copyright (C) 2004, 2005 nixCraft έργου
# Ανατροφοδότηση / παρατηρήσεις / προτάσεις: http://cyberciti.biz/fb/
# -------------------------
# Αυτό το σενάριο είναι μέρος της συλλογής nixCraft shell script (NSSC)
Επίσκεψη # http://bash.cyberciti.biz/ για περισσότερες πληροφορίες.
# Updated Σεπ - 2007 από CyberTek - http://www.cybertek.it
# -------------------------
Myuser = "SET-mysql-όνομα χρήστη" # USERNAME
Mypass = "SET-ΚΩΔΙΚΟΣ" # PASSWORD
MyHOST = "localhost" # Hostname
# Linux Μπιν μονοπάτια, αυτή η αλλαγή και αν δεν μπορεί να autodetected μέσω του οποίου η εντολή
MYSQL = "$ (που mysql)"
Mysqldump = "$ (που mysqldump)"
Chown = "$ (που chown)"
CHMOD = "$ (που chmod)"
Gzip = "$ (που gzip)"
# Αντίγρ Dest καταλόγου, αυτή η αλλαγή, αν έχετε someother θέση
DEST = "/ backup"
# Κύρια εφεδρικό κατάλογο όπου θα αποθηκεύονται
MBD = "$ DEST / mysql"
# Get hostname
HOST = "$ (hostname)"
# Λήψη δεδομένων σε dd-mm-yyyy μορφή
NOW = "$ (ημερομηνία +"% d -% m -% Y ")"
# Φάκελος για την αποθήκευση αντιγράφων ασφαλείας τρέχον αρχείο
FILE = ""
# Store λίστα των βάσεων δεδομένων
DBS = ""
# DO NOT BACKUP αυτών των βάσεων δεδομένων
Iggy = "test"
[- D $ MBD] & & mkdir - p $ MBD | |:
# Μόνο η ρίζα μπορεί να έχει πρόσβαση το!
Chown $ 0.0 - R $ DEST
$ $ CHMOD 0600 DEST
# Get βάσης κατάλογο όλων των πρώτων
DBS = "$ ($ mysql-u-myuser h $ $ $ MyHOST-p-mypass ΣΕΒ» δείχνουν βάσεις δεδομένων ') "
για δβ στο $ DBS
κάνω
skipdb = - 1
εάν [ "$ iggy!" = ""]?
μετά
για το i σε $ iggy
κάνω
[ "$ DB" = = "$ i"] & & skipdb = 1 | |:
ολοκληρώθηκε
fi
εάν [ "$ skipdb" = = "-1"]? τότε
FILE = "MBD $ / $ δβ. $ HOST. NOW.gz $"
# Να InOne δουλειά σε όλα σωλήνα,
# Σύνδεση με mysql χρησιμοποιώντας mysqldump επιλέξτε για βάση δεδομένων mysql
# Και σωλήνα έξω να GZ στο αρχείο backup dir:)
$ Mysqldump - $ u myuser - MyHOST H $ - $ $ p mypass δβ | $ gzip - 9> $ ΑΡΧΕΙΟ
fi
ολοκληρώθηκε
# Αντιγραφή σε απομακρυσμένο διακομιστή
echo'******************* Example_Backup *******************'> / root / mybackup.txt
echo \>> / root / mybackup.txt
ημερομηνία>> / root / mybackup.txt
echo \>> / root / mybackup.txt
'********************* Λεπτομέρειες *********************' echo>> / root / mybackup.txt
# Θυμόμαστε ότι η ΕΕΦ εντολή δεν μπορείτε να καθορίσετε τον κωδικό πρόσβασης σε περίπτωση που έχετε απαλλαγεί βασικό στόχο για το σύστημα
# Αλλιώς θα έχετε να κάνετε
SCP / backup / mysql / * root@example.dom: / home / backup / παράδειγμα / mysql /
OH-ls / backup / mysql />> / root / mybackup.txt
echo'************************************************ * ">> / root / mybackup.txt
# Στείλουμε ένα email με την έκθεση των εργασιών που εκτελούνται
mail-s "Παράδειγμα Backup" example@example.dom </ root / mybackup.txt
# Αφαίρεση μετά φορτώστε
rm-f / backup / mysql / *
Ταχυδρομημένος από: admin (3 Ιουλίου) Φυσικά, το προϊόν δεν είναι ακόμη σε θέση να ανταγωνιστούν με δυναμικό phpMyAdmin, αλλά voltela απλότητα και ελαφρότητα nostromotivo θα μπορούσε να είναι η επιλογή. Αν intragrare έναν πελάτη mysql μέσω web ίσως να μπορεί να στραφεί προς αυτό το προϊόν. Για να μεταβείτε στην ιστοσελίδα της sidu κάντε κλικ εδώ.
- Ταξινόμηση και φιλτράρισμα των πινάκων της βάσης δεδομένων.
- Δυνατότητα να συνδεθείτε για να φιλοξενεί και τις τοπικές και απομακρυσμένες βάσεις δεδομένων.
- Ασφαλής πρόσβαση όσον αφορά την απαγόρευση της πρόσβασης σε δεδομένα.
- Η συνεργασία με τους χρήστες και πολλαπλές ταυτόχρονες συνόδους.
- Caching δβ και πίνακες για να καταστεί δυνατή η γρήγορη απεικόνιση.
Ταχυδρομημένος από: admin (Ιούνιος 19) Δεν έχουμε χρόνο να μιλήσουμε για το πώς μπορείτε να δημιουργήσετε πίνακες βελτιστοποιηθεί ώστε να δώσει καλύτερα αποτελέσματα. Θυμάμαι μόνο ότι το δείκτη τομείς βελτίωση πολύ το χρόνο εκτέλεσης. Συζήτηση αντί για κάποια μικρή τέχνασμα για να κάνουμε πιο performant MySQL που συνήθως είναι εγκατεστημένο στις περισσότερες distro χωρίς πάρα πολλές παραμέτρους για tuning. Οι πληροφορίες παραπέμψει Linux distro αλλά μπορεί εύκολα να προσαρμοστεί σε άλλα OS.
Το αρχείο που βρίσκεται συνήθως στο / etc / my.ini.
Eempio των my.ini:
[mysqld]
datadir = / var / lib / mysql
socket = / var / lib / mysql / mysql.sock
set-μεταβλητή = key_buffer = 64M
set-μεταβλητή = max_user_connections = 100
set-μεταβλητή = query_cache_size = 64M
# Προεπιλ παλιό password για να χρησιμοποιούν υπόδειγμα για τη συμβατότητα με mysql 3.x
# Πελατες (αυτών που χρησιμοποιούν το πακέτο συμβατότητας mysqlclient10).
old_passwords = 1
[mysql.server]
χρήστη = mysql
basedir = / var / lib
[mysqld_safe]
πλανώμαι-log = / var / log / mysqld.log
pid-file = / var / run / mysqld / mysqld.pid
buffers: η ζώνη οποιαδήποτε incremeto θα πάρετε μια βάση δεδομένων πολύ γρηγορότερα. Τότε που οι buffers βασίζεται στην μνήμη που είναι διαθέσιμη, λαμβάνοντας υπόψη την κατανάλωση από το λειτουργικό σύστημα και άλλες εφαρμογές και υπηρεσίες σε χρήση. Αν διαθέσει πολύ μνήμη ενώ δεν έχουν μια διάταξη μπορεί να τρέχει σε συνολική απόδοση του συστήματος.
Wait_timeout: αντιπροσωπεύει το χρονικό διάστημα πριν να είναι κλειστό για να συνδέεται αυτόματα MySQL λόγω αδράνειας. Κάτω αριθμός είναι καλύτερη απόδοση. Σε αυτήν την περίπτωση θα πρέπει επίσης να παίξουν το είδος των συνδέσεων και των υποτιθέμενη χρόνο να υπολογίσει τη βέλτιστη παράμετρο.
back_log: Ελέγχει τον τρόπο με τον οποίο πολλές ταυτόχρονες συνδέσεις μπορεί να διατηρηθεί, ενώ δημιουργεί νέες Mysql νήμα. Η μείωση του αριθμού, τόσο μεγαλύτερη είναι η ταχύτητα. Προσοχή, είναι εύκολο να μην υποβαθμίσει την επίδοση αυτή η παράμετρος, με τη σωστή χρήση αυτού του μόνον όταν είναι απολύτως απαραίτητο.
Max_user_connections: Ορίζει τον μέγιστο αριθμό συνδέσεων που επιτρέπονται σε ένα χρήστη. Είναι πολύ χρήσιμο σε συστήματα στα οποία το ίδιο διακομιστή MySQL έχει πρόσβαση σε πολλούς χρήστες ταυτόχρονα.
Delayed_queue_size: αριθμό των γραμμών σε συνδυασμό με το INSERT ΚΑΘΥΣΤΕΡΗΜΕΝΗ. Θα πρέπει να είναι μικρότερη κατά μήκος των γραμμών, την ταχύτερη Mysql.
Sort_buffer_size: καθορίζει το μέγεθος της μνήμης που διατίθενται για την εφαρμογή των ρητρών ORDER BY, GROUP BY και. Για να καταστεί πιο αποτελεσματική ερωτήματα που έθεσε αυτή η παράμετρος σε μια τιμή μεγαλύτερη από 2Μ.
Table_cache: ελέγχει τον αριθμό των ανοικτών πίνακες για όλα τα νήματα, αυξάνοντας τη μεταβλητή αυτή θα αυξηθούν οι πίνακες φορτώνονται ταυτόχρονα και την εκτέλεση των Mysql θα είναι πολύ πιο γρήγορα. Προσοχή σε αυτή την παράμετρο, τα λειτουργικά συστήματα έχουν ένα όριο δείκτες σε αρχεία που ανοίγονται με τη μία, εάν υπερβαίνουν το όριο αυτό θα μπορεί να αναλάβει σε οποιαδήποτε δυσλειτουργία του συστήματος.
Thread_cache_size: Ορίζει τον αριθμό των νημάτων να διατηρεί στο cache. Το χαρακτηριστικό αυτό καθιστά τη χρήση των κλωστές πολύ γρήγορα.
Η εντολή SHOW STATUS μας βοηθά να παρακολουθούν σε πραγματικό χρόνο, αυτές οι μεταβλητές, οι οποίες περισσότερο από άλλους για να μας βοηθήσει να καταλάβουμε τι είναι οι πιο σημαντικές βελτιώσεις μπορούμε να κάνουμε:
Handler_read_first: Αναφέρεται πόσες φορές η πρώτη εγγραφή διαβάστηκε από ένα τραπέζι. Αν συμβεί αυτό, συχνά, αυτό σημαίνει ότι ο πίνακας δεν ήταν δείκτη σωστά.
Innodb_buffer_pool_wait_free: δείχνει τον αριθμό των φορών που MySQL πρέπει να περιμένουμε την έξαψη των σελίδων της μνήμης. Αν η τιμή που επιστρέφεται είναι υψηλή τότε το μέγεθος του buffer στην πισίνα, δεν έχει ρυθμιστεί σωστά για να γράψετε το ποσό των πράξεων υποστεί από το διακομιστή.
Key_reads: δείχνει τον αριθμό των φορών που MySQL έχει πρόσβαση στο σύστημα αρχείων της βάσης δεδομένων για τα ευρετήρια. Αυτό επιβραδύνει την ταχύτητα της εκτέλεσης, το ερώτημα, επομένως αν αυτή η τιμή είναι υψηλή, τότε σημαίνει ότι το κλειδί του buffer είναι πολύ μικρό και θα πρέπει να αυξηθεί.
Max_used_connections: Υποδεικνύει το μέγιστο αριθμό συνδέσεων που MySQL έπρεπε να αρχίσει κατά τη διάρκεια της τελευταίας εκκίνησης. Από τη μία πλευρά, αυτό αντιπροσωπεύει μια πραγματική αναφοράς (που βοηθά να αποφασίσει το μέγιστο αριθμό συνδέσεων που μπορεί να υποστηρίξει τον server) και το άλλο παρουσιάζεται ως ένα βολικό κυκλοφορίας αναλυτή.
Open_tables: Υποδηλώνει τον τρέχοντα αριθμό των πινάκων ανοικτή. Η αξία αυτή θα πρέπει να αναλυθούν σε συνδυασμό με το μέγεθος της μνήμης cache του πίνακα. Κανονικά, το μέγεθος των table_cache που θα πρέπει να είναι υψηλότερο για αυτή τη μεταβλητή. Εάν η αξία των open_tables είναι πολύ χαμηλότερη από table_cache να αποφευχθούν προβλήματα επιδόσεων, είναι, επομένως, επίσης να μειώσει το μέγεθος της μνήμης cache. Εάν η αξία των open_tables είναι πολύ υψηλό και πλησιάζει το μέγεθος της μνήμης cache, τότε το θέσετε table_cache.
- Select_full_join: Ο αριθμός των πλήρως ενταχθεί MySQL έχει διεξαχθεί για να ανταποκριθεί στα αιτήματα των πελατών της. Μια υψηλή τιμή δηλώνει ότι αντί να χρησιμοποιεί ευρετήρια, MySQL έχει αναγκαστεί να εκτελέσει πλήρη ένταξη. Αυτό υποδηλώνει την ανάγκη για μια ισχυρή δείκτης αυτών των πινάκων.
Slow_queries: αναφέρει τον αριθμό των ερωτημάτων που διήρκεσε περισσότερο από το συνηθισμένο να γίνει. Η υψηλή τιμή θα πρέπει να μας οδηγήσει να αναλύσουμε το Slow Query Log να προσδιορίσει ποια είναι η αργή ερώτημα να βελτιστοποιήσετε.
Threads_connected: Αναφέρεται ο συνολικός αριθμός των πελατών που είναι συνδεδεμένοι με το διακομιστή σε μια τέτοια στιγμή.
Created_tmp_disk_tables: αναφέρει τον αριθμό των προσωρινών πινάκων, οι οποίες δημιουργήθηκαν στο δίσκο αντί της μνήμης. Δεδομένου ότι η πρόσβαση των πινάκων σε ένα δίσκο είναι συνήθως πιο αργή από τη μνήμη, το περιεχόμενο της μεταβλητής είναι αντιστρόφως ανάλογη προς την ταχύτητα με την οποία εκτελείτε αναζητήσεις την εντολή CREATE TEMPORARY ΘΕΣΗ.
- Uptime: Εμφανίζει τον αριθμό των δευτερολέπτων για την υπηρεσία.
Δημοσίευση στο: mysql, συμβουλές