mysql多個密碼 3個小密碼優化MySQL

2021-10-18 22:11:22 字數 1825 閱讀 8225

首頁 > 資訊 > 3個小密碼優化mysql

3個小密碼優化mysql

我並不期望成為乙個專家級的 dba,但是,在我優化 mysql 時,我推崇 80/20 原則,明確說就是通過簡單的調整一些配置,你可以壓榨出高達 80% 的效能提公升。尤其是在伺服器資源越來越便宜的當下。

警告1.沒有兩個資料庫或者應用程式是完全相同的。這裡假設我們要調整的資料庫是為乙個「典型」的 web **服務的,優先考慮的是快速查詢、良好的使用者體驗以及處理大量的流量。

2.在你對伺服器進行優化之前,請做好資料庫備份!

1、使用 innodb 儲存引擎

如果你還在使用 myisam 儲存引擎,那麼是時候轉換到 innodb 了。有很多的理由都表明 innodb 比 myisam 更有優勢,如果你關注效能,那麼,我們來看一下它們是如何利用物理記憶體的:

myisam:僅在記憶體中儲存索引。

innodb:在記憶體中儲存索引和資料。

結論:儲存在記憶體的內容訪問速度要比磁碟上的更快。

下面是如何在你的表上去轉換儲存引擎的命令:

alter table table_name engine=innodb;

注意:你已經建立了所有合適的索引,對嗎?為了更好的效能,建立索引永遠是第一優先考慮的事情。

2、讓 innodb 使用所有的記憶體

你可以在 my.cnf 檔案中編輯你的 mysql 配置。使用 innodb_buffer_pool_size 引數去配置在你的伺服器上允許 innodb 使用物理記憶體數量。

對此(假設你的伺服器僅僅執行 mysql),公認的「經驗法則」是設定為你的伺服器物理記憶體的 80%。在保證作業系統不使用交換分割槽而正常執行所需要的足夠記憶體之後 ,盡可能多地為 mysql 分配物理記憶體。

因此,如果你的伺服器物理記憶體是 32 gb,可以將那個引數設定為多達 25 gb。

innodb_buffer_pool_size = 25600m

注意:(1)如果你的伺服器記憶體較小並且小於 1 gb。為了適用本文的方法,你應該去公升級你的伺服器。 (2) 如果你的伺服器記憶體特別大,比如,它有 200 gb,那麼,根據一般常識,你也沒有必要為作業系統保留多達 40 gb 的記憶體。

3、讓 innodb 多工執行

如果伺服器上的引數 innodb_buffer_pool_size 的配置是大於 1 gb,將根據引數 innodb_buffer_pool_instances 的設定, 將 innodb 的緩衝池劃分為多個。

擁有多於乙個的緩衝池的好處有:

在多執行緒同時訪問緩衝池時可能會遇到瓶頸。你可以通過啟用多緩衝池來最小化這種爭用情況:

對於緩衝池數量的官方建議是:

為了實現最佳的效果,要綜合考慮 innodb_buffer_pool_instances 和 innodb_buffer_pool_size 的設定,以確保每個例項至少有不小於 1 gb 的緩衝池。

因此,在我們的示例中,將引數 innodb_buffer_pool_size 設定為 25 gb 的擁有 32 gb 物理記憶體的伺服器上。乙個合適的設定為 25600m / 24 = 1.06 gb

innodb_buffer_pool_instances = 24

注意在修改了 my.cnf 檔案後需要重啟 mysql 才能生效:

sudo service mysql restart

還有更多更科學的方法來優化這些引數,但是這幾點可以作為乙個通用準則來應用,將使你的 mysql 伺服器效能更好。

關注『linux265』

我在這裡等你!這裡有您,有我,有大家!

標籤:#

Mysql忘記密碼了,咋辦,只需3步!

1 停止mysqld服務,編輯my.cnf主配置檔案,在 mysqld 模組下增加skip grant tables跳過授權表 2 啟動mysqld服務,哈哈,你發現現在進入資料庫就不需要密碼了 現在你就可以修改你的密碼啦,update mysql.user set password passwor...

mysql 3 修改root密碼命令小結

mysql u root p enter password mysql use mysql mysql update user set password password new password where user root 通過這種方法就可以直接修改密碼了。至於在cmd下能否登陸mysql,就...

mysql 修改密碼的四個方法

方法1 用set password命令 首先登入mysql。格式 mysql set password for 使用者名稱 localhost password 新密碼 例子 mysql set password for root localhost password 123 方法2 用mysqla...