使乙個新的MySQL安裝更安全

2021-04-02 09:19:45 字數 1221 閱讀 6681

在你自己安裝了乙個新的mysql伺服器後,你需要為mysql的root使用者指定乙個目錄(預設無口令),否則如果你忘記這點,你將你的mysql處於極不安全的狀態(至少在一段時間內)。

在unix(linux)上,在按照手冊的指令安裝好mysql後,你必須執行mysql_install_db指令碼建立包含授權表的mysql資料庫和初始許可權。在windows上,執行分發中的setup程式初始化資料目錄和mysql資料庫。假定伺服器也在執行。

當你第一次在機器上安裝mysql時,mysql資料庫中的授權表是這樣初始化的:

你可以從本地主機(localhost)上以root連線而不指定口令。root使用者擁有所有許可權(包括管理許可權)並可做任何事情。(順便說明,mysql超級使用者與unix超級使用者有相同的名字,他們彼此毫無關係。)

匿名訪問被授予使用者可從本地連線名為test和任何名字以test_開始的資料庫。匿名使用者可對資料庫做任何事情,但無管理許可權。

從本地主機多伺服器的連線是允許的,不管連線的使用者使用乙個localhost主機名或真實主機名。如:

% mysql -h localhost test

% mysql -h pit.snake.net test

你以root連線mysql甚至不指定口令的事實只是意味著初始安裝不安全,所以作為管理員的你首先要做的應該是設定root口令,然後根據你設定口令使用的方法,你也可以告訴伺服器過載授權表是它知道這個改變。(在伺服器啟動時,它過載表到記憶體中而可能不知道你已經修改了它們。)

對mysql 3.22和以上版本,你可以用mysqladmin設定口令:

% mysqladmin -u root password yourpassword

對於mysql的任何版本,你可以用mysql程式並直接修改mysql資料庫中的user授權表:

% mysql -u root mysql

mysql>update user set password=password("yourpassword") where user="root";

在你設定完口令後,通過執行下列命令檢查你是否需要告訴伺服器過載授權表:

% mysqladmin -u root status

如果伺服器仍然讓你以root而不指定口令而連線伺服器,過載授權表:

% mysqladmin -u root reload

在你設定了root的口令後(並且如果需要過載了授權表),你將需要在任何時候以root連線伺服器時指定口令。 

支援Mysql 使MySQL安裝更安全

你自己安裝了乙個新的mysql伺服器後,你需要為mysql的root使用者指定乙個目錄 預設無口令 否則如果你忘記這點,你將你的mysql處於極不安全的狀態 至少在一段時間內 在unix linux 上,在按照手冊的指令安裝好mysql後,你必須執行mysql install db指令碼建立包含授權...

乙個新的開始

學習soa快三個月了,前途雖光明,自我卻茫然。soa涉及的知識面很廣,業務流程建模 服務顆粒度劃分 esb三類基本協議 soap,xml,web severice,如何跨平台 如何在上層應用soa 資料庫的soa,應用系統的soa,系統整合的soa 貌似soa是萬靈丹,可應用到各個層次。是突破口呢?...

乙個新的開始

從今天開始,就要開始一段未知的流浪。我們的方向 我們的依靠 我們的嚮導現在變成了我們自己。未來會是什麼樣子?一切來的太突然了,突然間我們像是離開父母遠行的孩子。之前總覺得只要努力就好,比賽似乎就是努力兩個字,儘管我奇懶無比,但那時我們真的被照顧的太好了,似乎只有比賽才是我們的事 其餘的事情會有他們來...