当前位置:网站首页>Gestion des journaux sauvegarde et récupération des journaux dans MySQL
Gestion des journaux sauvegarde et récupération des journaux dans MySQL
2022-06-28 17:02:00 【Steve Lu】
Table des matières
Un.、MySQLType de journal commun et ouverture
2、Journal général des requêtes
1、Voir si le journal de requête générique est activé
2、Voir si le journal binaire est allumé
3、Vérifier si la fonction de jour de requête lent est activée
Voir les paramètres de temps de requête lent
Définir la méthode d'ouverture des requêtes lentes dans la base de données
Un.、Importance de la sauvegarde des données
2.、Classification des sauvegardes de base de données
1、Du point de vue physique et logique,Les sauvegardes peuvent être divisées en
Trois、Méthodes courantes de sauvegarde
2、Outils spéciaux de sauvegardemydumpOumysqlhotcopy
3、Démarrer le journal binaire pour la sauvegarde incrémentale
Quatre、MySQLSauvegarde et récupération complètes
1.Sauvegarde physique à froid et récupération
2.mysqldump Sauvegarde et récupération
Cinq、MySQL Sauvegarde et récupération incrémentales
1、Activer la fonction de journalisation binaire
2、Sauvegarde hebdomadaire complète de la base de données ou de la table
4、Insérer de nouvelles données,Pour simuler une augmentation ou une modification des données
5、Générer un nouveau fichier de log binaire(Par exemple mysql-bin.000004)
6、Voir le contenu du fichier journal binaire
MySQLGestion des journaux
MySQLL'emplacement par défaut pour enregistrer le journal est/usr/local/mysql/data
Il y a deux façons d'ouvrir le journal:Par profil ou par commande
Modifier les journaux ouverts par commande est temporaire,Le Service s'arrête après l'arrêt ou le redémarrage
Un.、MySQLType de journal commun et ouverture
vim /etc/my.cnf
[mysqld]
......1、Journal des erreurs
Pour enregistrer quandMySQLDémarrage、Message d'erreur lors de l'arrêt ou de l'exécution,Activé par défaut
Spécifiez où enregistrer le journal et le nom du fichier
log-error=/usr/local/mysql/data/mysql_error.log 2、Journal général des requêtes
Pour enregistrerMySQLToutes les connexions et déclarations pour,La valeur par défaut est désactivée
general_log=ON
general_log_file=/usr/local/mysql/data/mysql_general.log3、Journal binaire(binlog)
Utilisé pour enregistrer tous lesMySQLDémarrage、Message d'erreur envoyé à l'arrêt ou à l'exécution,La valeur par défaut est désactivée
log-bin=mysql-bin
Ou
log_bin=mysql-bin4、Journal de requête lent
Utilisé pour enregistrer tous les temps d'exécution supérieurs àlong_query_timeDeuxième déclaration,Vous pouvez trouver quelles déclarations de requête prennent beaucoup de temps à exécuter,Pour faciliter l'optimisation,La valeur par défaut est désactivée
slow_query_log=ON
slow_query_log_file=/usr/local/mysql/data/mysql_slow_query.log
long_query_time=5
systemctl restart mysqld 

2.、Afficher l'état du Journal
1、Voir si le journal de requête générique est activé
mysql -u root -p
show variables like 'general%'; 2、Voir si le journal binaire est allumé
show variables like 'log_bin%';3、Vérifier si la fonction de jour de requête lent est activée
show variables like '%slow%'; Voir les paramètres de temps de requête lent
show variables like 'long_query_time';Définir la méthode d'ouverture des requêtes lentes dans la base de données
set global slow_query_log=ON;
Le Service de redémarrage de la méthode a échoué


MySQLSauvegarde et récupération
Un.、Importance de la sauvegarde des données
Le but principal de la sauvegarde est la reprise après sinistre
Dans un environnement de production,La sécurité des données est essentielle
Toute perte de données peut avoir de graves conséquences
Cause de la perte de données
1、Erreur de programme
2、Erreur humaine
3、Erreur de calcul
4、Défaillance du disque
5、Catastrophe(Incendie、Le tremblement de terre、Vol, etc)
2.、Classification des sauvegardes de base de données
1、Du point de vue physique et logique,Les sauvegardes peuvent être divisées en
1、Sauvegarde physique:Fichiers physiques pour le système d'exploitation de la base de données(Comme les fichiers de données、Fichiers journaux, etc.)Sauvegarde de
Méthode de sauvegarde physique:
1.Sauvegarde à froid(Sauvegarde hors ligne):C'est fait en fermant la base de données
2.Sauvegarde à chaud(Sauvegarde en ligne):La base de données fonctionne,Fichiers journaux dépendants de la base de données
3.Sauvegarde chaude:Table de verrouillage de la base de données(Non écrit mais lisible)Opération de sauvegarde dans l'état de
2、Sauvegarde logique:Pour les composants logiques de la base de données(Par exemple::Objets de base de données tels que les tables)Sauvegarde de
2、Du point de vue de la politique de sauvegarde de la base de données,Les sauvegardes peuvent être divisées en
1、Sauvegarde complète:Chaque sauvegarde complète de la base de données
Une sauvegarde complète est pour toute la base de données、Sauvegarde de la structure de la base de données et de la structure du fichier.
Sauvegardez la base de données au moment où la sauvegarde est terminée.
Est la base des sauvegardes différentielles et incrémentales.
L'équivalent de la pierre angulaire.
2、Sauvegarde différentielle:Sauvegarde des fichiers modifiés depuis la dernière sauvegarde complète
3、Sauvegarde incrémentale:Les fichiers qui ont été modifiés après la dernière sauvegarde complète ou incrémentale seront sauvegardés
Trois、Méthodes courantes de sauvegarde
1、Réserve physique à froid
.La base de données était fermée au moment de la sauvegarde,Emballage direct des fichiers de base de données
Sauvegarde rapide,La restauration est aussi la plus simple
FermerMySQLBase de données
UtilisertarCommande packaging the database folder directly
Remplacer directement lesMySQLTable des matières
2、Outils spéciaux de sauvegardemydumpOumysqlhotcopy
mysqldumpOutils de sauvegarde logiques couramment utilisés
MySQLOutils de sauvegarde inclus,Oui réalisableMySQLSauvegarde de
La Bibliothèque spécifiée peut être、Tableau exporté sousSQLScript
Utilisez les commandesmysqlImporter des données sauvegardées
mysqlhotcopyN'avoir que des sauvegardesmyisamEtarchiveTableau
3、Démarrer le journal binaire pour la sauvegarde incrémentale
Effectuer des sauvegardes incrémentales,Besoin de rafraîchir le journal binaire
4、Sauvegarde d'outils tiers
GratuitMySQLLogiciel de sauvegarde à chaudPercona XtraBackup
Quatre、MySQLSauvegarde et récupération complètes
Environnement expérimental
MySQL CentOS7 192.168.19.18 mysql-boost-5.7.20.tar.gz
mysql -u root -p
create database SCHOOL;
use SCHOOL;
create table if not exists CLASS1 (
id int(4) not null auto_increment,
name varchar(10) not null,
sex char(10) not null,
hobby varchar(50),
primary key (id));
insert into CLASS1 values(1,'user1','male','running');
insert into CLASS1 values(2,'user2','female','singing');
set password = password('123123');
MySQL Sauvegarde complète
InnoDBLa base de données du moteur de stockage est stockée sur disque en trois fichiers:db.opt(Fichier des propriétés de la table)、Nom du tableau.frm(Fichier de structure du tableau)、Nom du tableau.ibd(Fichier de données du tableau).
1.Sauvegarde physique à froid et récupération
systemctl stop mysqld
yum -y install xzCompresser les sauvegardes
tar Jcvf /opt/mysql_all_$(date +%F).tar.xz /usr/local/mysql/data/Décompresser la récupération
tar Jxvf /opt/mysql_all_2020-11-22.tar.xz -C /usr/local/mysql/data
systemctl restart mysql2.mysqldump Sauvegarde et récupération
(1)Sauvegarde complète d'une ou plusieurs bibliothèques complètes(Y compris tous les tableaux)
mysqldump -u root -p[Mot de passe] --databases Nom de la Banque1 [Nom de la Banque2] … > /Chemin de sauvegarde/Nom du fichier de sauvegarde.sql #Exporter est un fichier de script de base de données
Exemple:
mysqldump -uroot -p123123 --databases SCHOOL > /opt/SCHOOL.sql
mysqldump -uroot -p123123 --databases mysql SCHOOL > /opt/mysql-SCHOOL.sql
(2)Sauvegarde complète MySQL Toutes les bibliothèques du serveur
mysqldump -u root -p[Mot de passe] --all-databases > /Chemin de sauvegarde/Nom du fichier de sauvegarde.sql

(3)Sauvegarde complète de certaines tables dans la Bibliothèque spécifiée
mysqldump -u root -p[Mot de passe] Nom de la Banque [Nom du tableau1] [Nom du tableau2] … > /Chemin de sauvegarde/Nom du fichier de sauvegarde.sql
mysqldump -uroot -p123123 SCHOOL CLASS1 > /opt/SCHOOL_CLASS1.sql
#Utiliser“-d”Options,Description enregistrer uniquement la structure de la table de la base de données
#Non utilisé“-d”Options,Description les données du tableau sont également sauvegardées(4)Affichage des fichiers de sauvegarde
grep -v "^--" /opt/SCHOOL_CLASS1.sql | grep -v "^/" | grep -v "^$"
Restauration complète de sauvegarde
1、Restaurer la base de données
mysql -uroot -p123123 -e 'drop database SCHOOL;'#“-e”Options,Utilisé pour spécifier les connexions MySQL Commandes exécutées après,Sortie automatique après l'exécution de la commande
mysql -uroot -p123123 -e 'SHOW DATABASES;'
mysql -uroot -p123123 < /opt/SCHOOL.sql
mysql -uroot -p123123 -e 'SHOW DATABASES;'
2、Restaurer la Feuille de données
mysql -uroot -p123123 -e 'drop table SCHOOL.CLASS1;'
mysql -uroot -p123123 -e 'show tables from SCHOOL;'
mysql -uroot -p123123 SCHOOL < /opt/SCHOOL_CLASS1.sql
mysql -uroot -p123123 -e 'show tables from SCHOOL;'
Cinq、MySQL Sauvegarde et récupération incrémentales
MySQL Sauvegarde incrémentale
1、Activer la fonction de journalisation binaire
vim /etc/my.cnf
[mysqld]
log-bin=mysql-bin
binlog_format = MIXED
server-id = 1#Journal binaire(binlog)Oui.3Différents formats d'enregistrement:STATEMENT(Basé surSQLDéclarations)、ROW(Basé sur la ligne)、MIXED(Mode mixte),Le format par défaut estSTATEMENT
systemctl restart mysqld
ls -l /usr/local/mysql/data/mysql-bin.*2、Sauvegarde hebdomadaire complète de la base de données ou de la table
mysqldump -uroot -p123123 SCHOOL CLASS1 > /opt/SCHOOL_CLASS1_$(date +%F).sql
mysqldump -uroot -p123123 --all-databases SCHOOL > /opt/SCHOOL_$(date +%F).sql3、Des sauvegardes incrémentales peuvent être effectuées quotidiennement,Générer un nouveau fichier de log binaire(Par exemple mysql-bin.000003)
mysqladmin -uroot -p123123 flush-logs
4、Insérer de nouvelles données,Pour simuler une augmentation ou une modification des données
mysql -uroot -p123123
use SCHOOL;
insert into CLASS1 values(3,'user3','male','game');
insert into CLASS1 values(4,'user4','female','reading');5、Générer un nouveau fichier de log binaire(Par exemple mysql-bin.000004)
mysqladmin -uroot -p123123 flush-logs#Étapes précédentes4Les opérations de la base de données pour seront sauvegardées dansmysql-bin.000003Dans le document,Les données de la base de données sont ensuite sauvegardées dansmysql-bin.000004Dans le document

6、Voir le contenu du fichier journal binaire
cp /usr/local/mysql/data/mysql-bin.000003 /opt/
mysqlbinlog --no-defaults --base64-output=decode-rows -v /opt/mysql-bin.000002#- -base64-output=decode-rows:Utiliser64Le mécanisme d'encodage des bits décode et lit en ligne
#-v:Afficher les détails

边栏推荐
- 【每日3题(1)】字符串中第二大的数字
- China energy integration and Tianyi cloud create an "energy brain"
- Super detailed steps for MySQL master-slave switching
- 如何登录到你的 WordPress 管理仪表板
- [tcapulusdb knowledge base] Introduction to tcapulusdb restrictions
- Interview with wangyuntao of China Academy of information technology: digital and real integration enables the prosperity and development of cultural industry
- NOIP1998-2018年普及组 CSP-J2 2019 2020 解题报告及视频
- You have a chance to collect wool. Click "earn" and you will have a chance to earn a high commission
- 强化 WordPress 的 11 种有效方法
- Written interview algorithm classic - longest palindrome substring
猜你喜欢
随机推荐
Hello, is it safe to open an account to buy stocks online?
VirtualBox中克隆了一个虚拟系统出现IP问题
批量修改指定字符文件名 bat脚本
MATLB|可视化学习(plot和bar)
强化 WordPress 的 11 种有效方法
使用Karmada实现Helm应用的跨集群部署
Noip1998-2018 popularization group csp-j2 2019 2020 problem solving report and video
[random talk] January 31, 2021 Oh Huo
6 - 字典
This simple little function saves 213 hours for our production research team in half a year
[daily 3 questions (1)] the second largest number in the string
大型体育赛事与犯罪风险
With high concurrency, high availability and elastic expansion, Tianyi cloud escorts Enterprise Cloud business
PotPlayer播放百度雲盤視頻
高并发、高可用、弹性扩展,天翼云护航企业云上业务
Introduction to LTSpice circuit simulation
[208] API design based on accesstoken
【208】基于AccessToken方式实现API设计
【TcaplusDB】祝大家端午安康!
[tcapulusdb knowledge base] how webclient users read and modify data









