Press "Enter" to skip to content

灰黑化挥花悔黑 Posts

MySQL日志

MySQL日志是记录MySQL数据库的日常做早和错误信息的文件。MySQL中,日志可以分为二进制日志、错误日志和通用查询日志以及慢查询日志。

日志是MySQL数据库的重要组成部分。日志文件中记录着MySQL数据库运行期间发生的变化。当数据库遭到意外的损害时,可以通过日志文件来查询出错原因,并且可以通过日志文件进行数据恢复。

服务器日志

记录进程启动运行过程中的特殊时间,帮助分析MySQL服务遇到的问题
根据需求抓取特定的SQL语句,追踪性能可能存在的问题的业务SQL
1. 服务错误日志
记录实例启动运行过程中的重要消息
配置参数
如果MySQL无法启动,应当首先查询
2. 慢查询日志
记录执行时间超过一定阈值的SQL语句
3. 综合查询日志
用于分析系统可能存在的性能问题的SQL语句

事务日志

记录应用程序对数据的所有更改;
可用于数据恢复;
可用于实例间数据恢复
1. 存储引擎事务日志;
部分引擎拥有重做日志(redo log)
InnoDB有WAL(Write Ahead Log)机制存储引擎;
日志随着事务commit有限持久化,却表异常恢复不丢数据;
日志顺序写性能较好
2. 二进制日志

二进制日志

二进制日志也叫做变更日志(update log),主要用于记录数据库的变化情况。

启动和设置二进制日志

[ubuntu]
sujx@TC8304:~$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
\\查找定位log_bin,取消字段前面的#号
server-id       = 1
log_bin         = /var/log/mysql/mysql-bin.log 
sujx@TC8304:~$ sudo service mysql restart
sujx@TC8304:/var/log/mysql$ ls
error.log    mysql-bin.000002  mysql-bin.index  mysql-bin.000001

查看二进制日志

sujx@TC8304:/var/log/mysql$ sudo mysqlbinlog mysql-bin.000001

删除二进制日志

mysql> reset master;

MySQL的备份与还原

备份数据是数据库管理中最常用的操作。为了保证数据库中的数据的安全,数据库管理员需要定期的进行数据库备份。一旦数据库遭到破坏,即通过备份的文件来还原数据库。

数据备份

使用mysqldump命令备份

使用mysqldump命令备份
sujx@TC8304:~$ mysqldump -u sujx -p sujx employee > backupemployee.sql

直接复制整个数据库的目录

适用于MyISAM存储引擎,不适用Innodb.

使用mysqlhotcopy工具快速备份

数据还原

sujx@TC8304:~$ mysql -usujx -p sujx <backupemployee.sql

数据库迁移

网易云课堂成绩

一个多月时间的里面,我参加网易云课堂的学习成绩单。

感觉这个信息统计不完全正确啊,明明所有作业、测验和考试都参加了。