- 檢測是否已安裝
rpm -qa | grep mysql
返回
mysql-common-8.0.17-3.module_el8.0.0+181+899d6349.x86_64
mysql-errmsg-8.0.17-3.module_el8.0.0+181+899d6349.x86_64
mysql-server-8.0.17-3.module_el8.0.0+181+899d6349.x86_64
mysql-8.0.17-3.module_el8.0.0+181+899d6349.x86_64
- 啟動 停止 重啟 查看狀態(tài)
systemctl start mysqld
systemctl stop mysqld
systemctl restart mysqld
systemctl status mysqld.service
journalctl -xe
- 查日志
cat /var/log/mysql/mysqld.log
或者
tail -200f /var/log/mysql/mysqld.log
- 配置內(nèi)存大小
vim /etc/my.cnf
innodb_buffer_pool_size=50M
- 查看配置參數(shù)
mysqladmin variables extended-status –u root –p
- 配置文件
[mysqld]
skip-name-resolve
table_definition_cache=200 # 默認(rèn)1400定枷,對內(nèi)存占用影響大
max_allowed_packet = 4M
# 接受的數(shù)據(jù)包大小届氢;增加該變量的值十分安全欠窒,這是因?yàn)閮H當(dāng)需要時才會分配額外內(nèi)存。例如退子,僅當(dāng)你發(fā)出長查詢或MySQLd必須返回大的結(jié)果行時MySQLd才會分配更多內(nèi)存岖妄。
# 該變量之所以取較小默認(rèn)值是一種預(yù)防措施,以捕獲客戶端和服務(wù)器之間的錯誤信息包寂祥,并確保不會因偶然使用大的信息包而導(dǎo)致內(nèi)存溢出衣吠。
read_buffer_size = 2M
# MySQL讀入緩沖區(qū)大小。對表進(jìn)行順序掃描的請求將分配一個讀入緩沖區(qū)壤靶,MySQL會為它分配一段內(nèi)存緩沖區(qū)缚俏。read_buffer_size變量控制這一緩沖區(qū)的大小。
# 如果對表的順序掃描請求非常頻繁贮乳,并且你認(rèn)為頻繁掃描進(jìn)行得太慢忧换,可以通過增加該變量值以及內(nèi)存緩沖區(qū)大小提高其性能
read_rnd_buffer_size = 8M
# MySQL的隨機(jī)讀緩沖區(qū)大小。當(dāng)按任意順序讀取行時(例如向拆,按照排序順序)亚茬,將分配一個隨機(jī)讀緩存區(qū)。進(jìn)行排序查詢時浓恳,
# MySQL會首先掃描一遍該緩沖刹缝,以避免磁盤搜索碗暗,提高查詢速度,如果需要排序大量數(shù)據(jù)梢夯,可適當(dāng)調(diào)高該值言疗。但MySQL會為每個客戶連接發(fā)放該緩沖空間,所以應(yīng)盡量適當(dāng)設(shè)置該值颂砸,以避免內(nèi)存開銷過大
sort_buffer_size = 8M
# MySQL執(zhí)行排序使用的緩沖大小噪奄。如果想要增加ORDER BY的速度,首先看是否可以讓MySQL使用索引而不是額外的排序階段人乓。
# 如果不能勤篮,可以嘗試增加sort_buffer_size變量的大小
join_buffer_size = 8M
# 聯(lián)合查詢操作所能使用的緩沖區(qū)大小傲醉,和sort_buffer_size一樣右蹦,該參數(shù)對應(yīng)的分配內(nèi)存也是每連接獨(dú)享
thread_cache_size = 8
# 這個值(默認(rèn)8)表示可以重新利用保存在緩存中線程的數(shù)量屈雄,當(dāng)斷開連接時如果緩存中還有空間瞭恰,那么客戶端的線程將被放到緩存中童谒,
# 如果線程重新被請求辽俗,那么請求將從緩存中讀取,如果緩存中是空的或者是新的請求无牵,那么這個線程將被重新創(chuàng)建,如果有很多新的線程茬祷,
expire_logs_days = 30 #超過30天的binlog刪除
innodb_open_files = 100
# 限制Innodb能打開的表的數(shù)據(jù)姑尺,如果庫里的表特別多的情況竟终,請增加這個。這個值默認(rèn)是300
innodb_buffer_pool_size = 32M
# InnoDB使用一個緩沖池來保存索引和原始數(shù)據(jù), 不像MyISAM.
innodb_write_io_threads = 4
innodb_read_io_threads = 4
# innodb使用后臺線程處理數(shù)據(jù)頁上的讀寫 I/O(輸入輸出)請求,根據(jù)你的 CPU 核數(shù)來更改,默認(rèn)是4
# 注:這兩個參數(shù)不支持動態(tài)改變,需要把該參數(shù)加入到my.cnf里切蟋,修改完后重啟MySQL服務(wù),允許值的范圍從 1-64
innodb_log_buffer_size = 2M
# 此參數(shù)確定些日志文件所用的內(nèi)存大小统捶,以M為單位。緩沖區(qū)更大能提高性能柄粹,但意外的故障將會丟失數(shù)據(jù)喘鸟。MySQL開發(fā)人員建議設(shè)置為1-8M之間
innodb_log_file_size = 32M
# 此參數(shù)確定數(shù)據(jù)日志文件的大小,更大的設(shè)置可以提高性能驻右,但也會增加恢復(fù)故障數(shù)據(jù)庫所需的時間
innodb_log_files_in_group = 3
# 為提高性能什黑,MySQL可以以循環(huán)方式將日志文件寫到多個文件。推薦設(shè)置為3
innodb_max_dirty_pages_pct = 90
# innodb主線程刷新緩存池中的數(shù)據(jù)堪夭,使臟數(shù)據(jù)比例小于90%
innodb_lock_wait_timeout = 120
# InnoDB事務(wù)在被回滾之前可以等待一個鎖定的超時秒數(shù)愕把。InnoDB在它自己的鎖定表中自動檢測事務(wù)死鎖并且回滾事務(wù)。InnoDB用LOCK TABLES語句注意到鎖定設(shè)置森爽。默認(rèn)值是50秒
bulk_insert_buffer_size = 8M
# 批量插入緩存大小恨豁, 這個參數(shù)是針對MyISAM存儲引擎來說的。適用于在一次性插入100-1000+條記錄時爬迟, 提高效率橘蜜。默認(rèn)值是8M「杜唬可以針對數(shù)據(jù)量的大小计福,翻倍增加跌捆。
myisam_sort_buffer_size = 8M
# MyISAM設(shè)置恢復(fù)表之時使用的緩沖區(qū)的尺寸
performance_schema=off #內(nèi)存減少效果明顯
table_open_cache=64
tmp_table_size = 20M #臨時表
#query_cache_size = 50M #查詢緩存
[mysqldump]
quick
max_allowed_packet = 16M #服務(wù)器發(fā)送和接受的最大包長度
[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M