日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql udb_MySQL InnoDB的一些参数说明

發布時間:2023/12/2 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql udb_MySQL InnoDB的一些参数说明 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考:http://addls.com/mysql-innodb-%E4%B9%8B-ibdata1-%E7%98%A6%E8%BA%AB%E5%A4%A7%E6%B3%95.html

# 備份數據庫:

/usr/local/mysql/bin/mysqldump -uDBuser -pPassword –quick –force –routines –add-drop-database –all-databases –add-drop-table > /data/bkup/mysqldump.sql

# 停止數據庫

service mysqld stop

# 刪除這些大文件

rm /usr/local/mysql/var/ibdata1

rm /usr/local/mysql/var/ib_logfile*

:> /usr/local/mysql/var/mysql-bin.index

# 手動刪除除Mysql之外所有數據庫文件夾,然后啟動數據庫

service mysqld start

# 還原數據

/usr/local/mysql/bin/mysql -uroot -phigkoo < /data/bkup/mysqldump.sql

默認情況下,innodb的參數設置的非常小,在生產環境中遠遠不夠用

比如最重要的兩個參數

innodb_buffer_pool_size 默認是8M

innodb_flush_logs_at_trx_commit 默認設置的是1 也就是同步刷新log(可以這么理解)

innodb_buffer_pool_size:這是InnoDB最重要的設置,對InnoDB性能有決定性的影響。默認的設置只有8M,所以默認的數據庫設置下面InnoDB性能很差。在只有 InnoDB存儲引擎的數據庫服務器上面,可以設置60-80%的內存。更精確一點,在內存容量允許的情況下面設置比InnoDB tablespaces大10%的內存大小。

innodb_data_file_path:指定表數據和索引存儲的空間,可以是一個或者多個文件。最后一個數據文件必須是自動擴充的,也只有最后一個文件允許自動擴充。這樣,當空間用完后,自動擴充數據文件就會自動增長(以8MB為單位)以容納額外的數據。例如: innodb_data_file_path=/disk1 /ibdata1:900M;/disk2/ibdata2:50M:autoextend兩個數據文件放在不同的磁盤上。數據首先放在ibdata1 中,當達到900M以后,數據就放在ibdata2中。一旦達到50MB,ibdata2將以8MB為單位自動增長。如果磁盤滿了,需要在另外的磁盤上面增加一個數據文件。

innodb_data_home_dir:放置表空間數據的目錄,默認在mysql的數據目錄,設置到和MySQL安裝文件不同的分區可以提高性能。

innodb_log_file_size:該參數決定了recovery speed。太大的話recovery就會比較慢,太小了影響查詢性能,一般取256M可以兼顧性能和recovery的速度

innodb_log_buffer_size:磁盤速度是很慢的,直接將log寫道磁盤會影響InnoDB的性能,該參數設定了log buffer的大小,一般4M。如果有大的blob操作,可以適當增大。

innodb_flush_logs_at_trx_commit=2: 該參數設定了事務提交時內存中log信息的處理。

1) =1時,在每個事務提交時,日志緩沖被寫到日志文件,對日志文件做到磁盤操作的刷新。Truly ACID。速度慢。

2) =2時,在每個事務提交時,日志緩沖被寫到文件,但不對日志文件做到磁盤操作的刷新。只有操作系統崩潰或掉電才會刪除最后一秒的事務,不然不會丟失事務。

3) =0時, 日志緩沖每秒一次地被寫到日志文件,并且對日志文件做到磁盤操作的刷新。任何mysqld進程的崩潰會刪除崩潰前最后一秒的事務

innodb_file_per_table:可以存儲每個InnoDB表和它的索引在它自己的文件中。

transaction-isolation=READ-COMITTED: 如果應用程序可以運行在READ-COMMITED隔離級別,做此設定會有一定的性能提升。

innodb_flush_method: 設置InnoDB同步IO的方式:

1) Default – 使用fsync()。

2) O_SYNC 以sync模式打開文件,通常比較慢。

3) O_DIRECT,在Linux上使用Direct IO。可以顯著提高速度,特別是在RAID系統上。避免額外的數據復制和double buffering(mysql buffering 和OS buffering)。

innodb_thread_concurrency: InnoDB kernel最大的線程數。

1) 最少設置為(num_disks+num_cpus)*2。

2) 可以通過設置成1000來禁止這個限制

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的mysql udb_MySQL InnoDB的一些参数说明的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。