Rumah pangkalan data tutorial mysql MySQL 日志的类型

MySQL 日志的类型

Jun 01, 2016 pm 01:16 PM
maklumat pelayan Rekod

MySQL日志类别
一般查询日志:log,general_log,log_output
慢查询日志:查询执行的时长超过指定的查询,即为慢查询;
错误日志:通常时指错误日志的相关信息,通常用服务器关闭和启动的日志信息,服务器运行过程中的错误信息,还可以记录警告信息。
二进制日志:只是跟修改相关的操作,可以理解为一个重做日志,用于复制的基本凭据;
中继日志:它其实跟复制相关的,与二进制日志几乎相同;

事物日志:随机I/O转换为顺序I/O,一般在两个文件存储,一个存满了就换另外一个存

查询日志

log={ON|OFF} # 是否记录所有语句的日志信息于一般查询日志文件(general_log)中;log_output={TABLE | FILE | NONE} # 定义log保存形式,none表示不保存日志;table和file可以同时出现,用逗号分隔即可;general_log={ON|OFF} # 是否启动查询日志;general_log_file # 定义一般查询日志保存的文件;mysql > SET GOLBAL general_log ={OFF|ON};启用或关闭一般查询日志mysql > SET GLOGAL log_output=’TABLE’;选项可以控制log的存放方法,table表示以表格的方式存放。
Salin selepas log masuk

注:

  • 若想开启查询日志,则log和general_log参数都必须处于ON状态;

  • 对于繁忙的MySQL,不建议开启此日志;

慢查询日志:查询执行时长超过指定时长的查询,即为慢查询

long_query_time # 定义慢查询的时长;slow_query_log {ON|OFF} # 全局参数,设定是否启用慢查询日志;它的输出位置也取决于log_output的值;slow_query_log_file # 定义日志文件路径及名称;log_slow_filter # 慢查询日志过滤类型;log_slow_queries # 是否启用慢查询日志,会话级别的;log_rate_limit=1 # 定义其日志记录速率;log_slow_verbosity # 是否记录详细格式的日志信息;
Salin selepas log masuk

错误日志

主要记录内容

  • 服务器启动和关闭过程中的信息;

  • 服务器运行过程中的错误信息;

  • 事件调度器运行一个事件时产生的信息;

  • 在复制架构中从服务器上启动从服务器线程时产生的信息;

参数设定

log_error = /path/to/error_log_file # 定义错误日志文件log_warnnings = {1|0} # 是否记录警告信息于错误日志中
Salin selepas log masuk

二进制日志

记录了对MySQL数据库进行的修改操作,,影响数据潜在的内容的信息,select的是不会被记录到二进制日志的,二进制日志也叫复制日志,默认在数据目录下,专门查看日志的命令是:mysqlbinlog

功能:1、做时间点恢复,要想从哪个时间点恢复我们可以手动调的,所以这是一个备份恢复的重要工具

2、 mysql主从复制架构中使用;

因为我们的MySQL数据是单进程多线程的工作机制,所以他可以同时发起很多们修改的语句,但是我们服务器使用的日志只有一个,那如果同时进行的多个线程 的请求都同时往日志文件中写数据,日志文件就成了资源热点,也叫资源征用点,那就会混乱不堪,为了解决这种问题,这里,当我们的线程要往二进制日志文件中 写数据的时候,它不是直接写到日志文件中去,还是统一写到日志缓冲区中,由日志缓冲区逐一写入日志文件中去,然而我们的日志文件对于一个很繁忙的服务器来 讲,每天都会产生很大的数据量,如果所有的二进制日志数据都写在一个日志文件中,那管理起来就特点的不方便了,也很不合理,如是日志文件丢失,那所有的日 志数据信息都丢失了,不应该这么做,那我们就有日志滚动的机制了,二进制日志我们可以自己定义,有两种定义日志滚致力的方法,一种是按大小来定义的,比如 说我们定义一个日志文件的大小为1G,那他存储一了大概1G左右就会滚动,使用下一个日志来存放二进制日志数据;另一种可以按时间来定义的,比如说一周滚 动一次,或者说一个月,一天滚动一次都可以;或者每次重启服务时或者执行FLUSH LOGS命令时都会滚动一次日志。

MariaDB [(none)]> SHOW MASTER STATUS;可以查看当前服务器正在使用的二进制日志文件以及下一下个事件开始时基于的位置Position,如果当前使用的是00004,那么00001、2、3将不会再被使用,因为已经被滚动过去了。MariaDB [hellodb]> SHOW BINARY LOGS;查看当前系统上所有的的二进制日志文件,其实就是数据目录下mysql-bin.index文件中的信息,这个文件就是保存已经滚动过的日志文件的条目。MariaDB [hellodb]> flush logs;清除日志文件的命令:PURGEMariaDB [hellodb]> show binlog events in ‘log_file’;# mysqlbinlog--start-time--stop-time--start-# mysqlbinlog --start-protion=1139 mysql-bin.000001:在命令行中查看某个日志文件的某个位置点往后所记录的数据信息。可以用输出重定向保存到某个文件中去将来用于执行的。server-id:服务器的身份标识,MariaDB [hellodb]> SELECTVERSION();查看当前数据库的版本MariaDB [(none)]> SHOW BINLOG EVENTS IN 'mysql-bin.000001' FROM 1139;查看某个二进制日志文件中从哪个位置往后发生的事件信息。MariaDB [(none)]> SHOW BINLOG EVENTS IN 'mysql-bin.000006'/G查看某个二进制文件中在所有时间点和结束点等相关的信息。 
Salin selepas log masuk

MySQL记录二进制日志的格式

statement:基于语句

  • 缺陷:执行带时间函数的语句时,会导致主从服务器执行结果不一致;

  • 如 insert into tb1 value (current_date());

row:基于行

  • 缺陷:批量更新操作将导致从服务器进行更多的操作 update tb2 set salary=salary+1000;

  • mixed:混合模式,由MySQL自行判断选择适合的方式基于语句或基于行记录日志;

二进制日志文件的内容格式

  • 事件发生的日期和时间

  • 服务器id:server_id

  • 事件的结束位置:end_log_pos

  • 事件的类型:如Query,GTID等

  • 原服务器生成此事件时的线程id:thread_id

  • 语句的时间戳和写入二进制日志文件的时间差,exec_time

  • 错误代码:error_code

  • 事件位置:at #,相当于下一事件的开始位置

设定参数

og_bin = {ON|OFF|FileName} # 全局变量,控制二进制文件位置log_bin_trust_function_creators # 全局变量,仅在启用二进制日志时有效,用于控制创建存储函数时如果会导致不安全的事件是否禁止创建存储函数sql_log_bin = {ON|OFF} # 会话级别,用于控制二进制日志信息是否记录进日志文件sync_binlog # 设定多久同步一次二进制日志至磁盘文件中,0表示不同步,任何正数值都表示对二进制每多少次写操作之后同步一次;binlog_format={statement|row|mixed} # 指定二进制日志的类型max_binlog_cache_size= # 二进制日志缓冲空间大小,仅用于缓冲事务类的语句, 其上限由max_binlog_stmt_cache_size决定max_binlog_size= # 二进制日志文件大小上限,单位字节,默认大小1G# 注:切勿将二进制日志与数据文件放在同一磁盘上,减少磁盘I/O
Salin selepas log masuk

中继日志:它其实跟复制相关的,与二进制日志几乎相同,只不过它不是用于记录事件的,而是作为读取数据的源并且在本地执行的,当然中继日志是在从服务器上。

设定参数

MariaDB [hellodb]> SHOW GLOBAL VARIABLES LIKE '%relay%';查看中继日志的相关参数信息

relay_log=file_name # 设定中继日志的文件名称relay_log_index=file_name # 设定中继日志的索引文件名,默认为为数据目录中的host_name-relay-bin.indexrelay_log_purge={ON|OFF} # 是否自动清理不再需要的中继日志relay_log_space_limit= # 设定用于存储所有中继日志文件的可用空间大小,0表示不限制<br><code>relay_log_recovery:跟中继日志自动恢复相关的</code><br><code>relay_log={空}:是否启用中继日志的</code>
Salin selepas log masuk

事务日志

  • 暂存事务提交的数据,实现将随机I/O转换成顺序I/O;

  • 事务数据提交流程:innodb_buffer-->事务日志-->数据文件;

  • 事务日志文件组,至少应该有2个日志文件,一般保存在数据目录下,为ib_logfile0和ib_logfile1;

注意事项

  • 尽可能使用小事务以提升事务引擎的性能;因为事务越大,回滚开销越大;

  • 崩溃恢复:将提交的事务从事务日志中同步至数据文件,将未提交的事务执行回滚操作,以保证数据一致性;

  • 避免磁盘故障导致事务文件丢失:对事务日志所在的磁盘做数据镜像;

  • 事务日志文件和数据文件应分离存放:防止对同一磁盘过于频繁的I/O操作;

设定参数

wKioL1NXy6fi3sQ1AANpGEcPAlk406.jpg

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Di manakah saya boleh melihat rekod perkara yang telah saya beli di Pinduoduo Bagaimana untuk melihat rekod produk yang dibeli? Di manakah saya boleh melihat rekod perkara yang telah saya beli di Pinduoduo Bagaimana untuk melihat rekod produk yang dibeli? Mar 12, 2024 pm 07:20 PM

Perisian Pinduoduo menyediakan banyak produk yang bagus, anda boleh membelinya pada bila-bila masa dan di mana-mana sahaja, dan kualiti setiap produk dikawal ketat, setiap produk adalah tulen, dan terdapat banyak diskaun beli-belah keutamaan, membolehkan semua orang membeli-belah dalam talian. Masukkan nombor telefon mudah alih anda untuk log masuk dalam talian, tambahkan berbilang alamat penghantaran dan maklumat hubungan dalam talian, dan semak arah aliran logistik terkini pada bila-bila masa. Cari dan leret ke atas dan ke bawah untuk membeli dan membuat pesanan. Anda boleh mengalami kemudahan tanpa meninggalkan rumah Dengan perkhidmatan membeli-belah dalam talian, anda juga boleh melihat semua rekod pembelian, termasuk barangan yang telah anda beli, dan menerima berpuluh-puluh sampul merah beli-belah dan kupon Sekarang editor telah menyediakan maklumat dalam talian terperinci untuk Pengguna Pinduoduo untuk melihat rekod produk yang dibeli. 1. Buka telefon anda dan klik pada ikon Pinduoduo.

Bagaimana untuk menyelesaikan masalah bahawa carian eMule tidak dapat menyambung ke pelayan Bagaimana untuk menyelesaikan masalah bahawa carian eMule tidak dapat menyambung ke pelayan Jan 25, 2024 pm 02:45 PM

Penyelesaian: 1. Semak tetapan eMule untuk memastikan anda telah memasukkan alamat pelayan dan nombor port yang betul 2. Semak sambungan rangkaian, pastikan komputer disambungkan ke Internet, dan tetapkan semula penghala; adalah dalam talian. Jika tetapan anda adalah Jika tiada masalah dengan sambungan rangkaian, anda perlu menyemak sama ada pelayan dalam talian 4. Kemas kini versi eMule, lawati tapak web rasmi eMule, dan muat turun versi terkini perisian eMule; 5. Dapatkan bantuan.

Penyelesaian kepada ketidakupayaan untuk menyambung ke pelayan RPC dan ketidakupayaan untuk memasuki desktop Penyelesaian kepada ketidakupayaan untuk menyambung ke pelayan RPC dan ketidakupayaan untuk memasuki desktop Feb 18, 2024 am 10:34 AM

Apakah yang perlu saya lakukan jika pelayan RPC tidak tersedia dan tidak boleh diakses pada desktop Dalam beberapa tahun kebelakangan ini, komputer dan Internet telah menembusi setiap sudut kehidupan kita. Sebagai teknologi untuk pengkomputeran berpusat dan perkongsian sumber, Panggilan Prosedur Jauh (RPC) memainkan peranan penting dalam komunikasi rangkaian. Walau bagaimanapun, kadangkala kita mungkin menghadapi situasi di mana pelayan RPC tidak tersedia, mengakibatkan ketidakupayaan untuk memasuki desktop. Artikel ini akan menerangkan beberapa kemungkinan punca masalah ini dan memberikan penyelesaian. Pertama, kita perlu memahami mengapa pelayan RPC tidak tersedia. Pelayan RPC ialah a

Penjelasan terperinci mengenai fius pemasangan CentOS dan pelayan pemasangan CentOS Penjelasan terperinci mengenai fius pemasangan CentOS dan pelayan pemasangan CentOS Feb 13, 2024 pm 08:40 PM

Sebagai pengguna LINUX, kami selalunya perlu memasang pelbagai perisian dan pelayan pada CentOS Artikel ini akan memperkenalkan secara terperinci cara memasang fius dan menyediakan pelayan pada CentOS untuk membantu anda menyelesaikan operasi yang berkaitan dengan lancar. CentOS installation fuseFuse ialah rangka kerja sistem fail ruang pengguna yang membenarkan pengguna yang tidak mempunyai hak untuk mengakses dan mengendalikan sistem fail melalui sistem fail tersuai Memasang fius pada CentOS adalah sangat mudah, cuma ikuti langkah berikut: 1. Buka terminal dan Log masuk sebagai pengguna akar. 2. Gunakan arahan berikut untuk memasang pakej fius: ```yuminstallfuse3. Sahkan gesaan semasa proses pemasangan dan masukkan `y` untuk meneruskan. 4. Pemasangan selesai

Bagaimana untuk mengkonfigurasi Dnsmasq sebagai pelayan geganti DHCP Bagaimana untuk mengkonfigurasi Dnsmasq sebagai pelayan geganti DHCP Mar 21, 2024 am 08:50 AM

Peranan geganti DHCP adalah untuk memajukan paket DHCP yang diterima ke pelayan DHCP lain pada rangkaian, walaupun kedua-dua pelayan berada pada subnet yang berbeza. Dengan menggunakan geganti DHCP, anda boleh menggunakan pelayan DHCP berpusat di pusat rangkaian dan menggunakannya untuk menetapkan alamat IP secara dinamik kepada semua subnet/VLAN rangkaian. Dnsmasq ialah pelayan protokol DNS dan DHCP yang biasa digunakan yang boleh dikonfigurasikan sebagai pelayan geganti DHCP untuk membantu mengurus konfigurasi hos dinamik dalam rangkaian. Dalam artikel ini, kami akan menunjukkan kepada anda cara mengkonfigurasi dnsmasq sebagai pelayan geganti DHCP. Topik Kandungan: Topologi Rangkaian Mengkonfigurasi Alamat IP Statik pada Geganti DHCP D pada Pelayan DHCP Berpusat

Panduan Amalan Terbaik untuk Membina Pelayan Proksi IP dengan PHP Panduan Amalan Terbaik untuk Membina Pelayan Proksi IP dengan PHP Mar 11, 2024 am 08:36 AM

Dalam penghantaran data rangkaian, pelayan proksi IP memainkan peranan penting, membantu pengguna menyembunyikan alamat IP sebenar mereka, melindungi privasi dan meningkatkan kelajuan akses. Dalam artikel ini, kami akan memperkenalkan panduan amalan terbaik tentang cara membina pelayan proksi IP dengan PHP dan menyediakan contoh kod khusus. Apakah pelayan proksi IP? Pelayan proksi IP ialah pelayan perantaraan yang terletak di antara pengguna dan pelayan sasaran Ia bertindak sebagai stesen pemindahan antara pengguna dan pelayan sasaran, memajukan permintaan dan respons pengguna. Dengan menggunakan pelayan proksi IP

Apakah yang perlu saya lakukan jika saya tidak boleh memasuki permainan apabila pelayan epik berada di luar talian? Bagaimana untuk menyelesaikan masalah tidak dapat memasuki permainan apabila epik di luar talian Apakah yang perlu saya lakukan jika saya tidak boleh memasuki permainan apabila pelayan epik berada di luar talian? Bagaimana untuk menyelesaikan masalah tidak dapat memasuki permainan apabila epik di luar talian Mar 13, 2024 pm 04:40 PM

Apakah yang perlu saya lakukan jika saya tidak boleh memasuki permainan apabila pelayan epik berada di luar talian? Masalah ini mesti dihadapi oleh ramai rakan Apabila gesaan ini muncul, permainan yang tulen ini biasanya disebabkan oleh gangguan dari rangkaian dan perisian keselamatan Jadi bagaimana ia harus diselesaikan Saya ingin berkongsi penyelesaian dengan anda Saya harap tutorial perisian hari ini dapat membantu anda menyelesaikan masalah. Perkara yang perlu dilakukan jika pelayan epik tidak boleh memasuki permainan apabila ia di luar talian: 1. Ia mungkin diganggu oleh perisian keselamatan Tutup platform permainan dan perisian keselamatan dan kemudian mulakan semula. 2. Yang kedua ialah rangkaian berubah-ubah terlalu banyak Cuba mulakan semula penghala untuk melihat jika keadaannya OK, anda boleh cuba menggunakan rangkaian mudah alih 5g untuk beroperasi. 3. Kemudian mungkin ada lagi

Cara melihat sejarah log ubat anda dalam apl Kesihatan pada iPhone Cara melihat sejarah log ubat anda dalam apl Kesihatan pada iPhone Nov 29, 2023 pm 08:46 PM

iPhone membolehkan anda menambah ubat dalam apl Kesihatan untuk menjejak dan mengurus ubat, vitamin dan suplemen yang anda ambil setiap hari. Anda kemudian boleh log ubat yang telah anda ambil atau langkau apabila anda menerima pemberitahuan pada peranti anda. Selepas anda mencatatkan ubat anda, anda boleh melihat kekerapan anda mengambil atau melangkaunya untuk membantu anda menjejaki kesihatan anda. Dalam siaran ini, kami akan membimbing anda untuk melihat sejarah log ubat yang dipilih dalam apl Kesihatan pada iPhone. Panduan ringkas tentang cara melihat sejarah log ubat anda dalam Apl Kesihatan: Pergi ke Apl Kesihatan&gt;Semak imbas&gt;Ubat&gt;Ubat&gt;Pilih Ubat&gt;Pilihan&a

See all articles