溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

使一個(gè)新的MySQL安裝更安全(轉(zhuǎn))

發(fā)布時(shí)間:2020-08-09 03:37:15 來(lái)源:ITPUB博客 閱讀:191 作者:subid 欄目:MySQL數(shù)據(jù)庫(kù)
使一個(gè)新的MySQL安裝更安全 (轉(zhuǎn))[@more@]在你自己安裝了一個(gè)新的MySQL服務(wù)器后,你需要為MySQL的root用戶指定一個(gè)目錄(缺省無(wú)口令),否則如果你忘記這點(diǎn),你將你的MySQL處于極不安全的狀態(tài)(至少在一段時(shí)間內(nèi))。

在Unix(Linux)上,在按照手冊(cè)的指令安裝好MySQL后,你必須運(yùn)行mysql_install_db腳本建立包含授權(quán)表的mysql數(shù)據(jù)庫(kù)和初始權(quán)限。在Windows上,運(yùn)行分發(fā)中的Setup程序初始化數(shù)據(jù)目錄和mysql數(shù)據(jù)庫(kù)。假定服務(wù)器也在運(yùn)行。

當(dāng)你第一次在機(jī)器上安裝MySQL時(shí),mysql數(shù)據(jù)庫(kù)中的授權(quán)表是這樣初始化的:

你可以從本地主機(jī)(localhost)上以root連接而不指定口令。root用戶擁有所有權(quán)限(包括管理權(quán)限)并可做任何事情。(順便說(shuō)明,MySQL超級(jí)用戶與Unix超級(jí)用戶有相同的名字,他們彼此毫無(wú)關(guān)系。)
匿名訪問(wèn)被授予用戶可從本地連接名為test和任何名字以test_開(kāi)始的數(shù)據(jù)庫(kù)。匿名用戶可對(duì)數(shù)據(jù)庫(kù)做任何事情,但無(wú)管理權(quán)限。
從本地主機(jī)多服務(wù)器的連接是允許的,不管連接的用戶使用一個(gè)localhost主機(jī)名或真實(shí)主機(jī)名。如:

% mysql -h localhost test

% mysql -h pit.snake.net test

你以root連接MySQL甚至不指定口令的事實(shí)只是意味著初始安裝不安全,所以作為管理員的你首先要做的應(yīng)該是設(shè)置root口令,然后根據(jù)你設(shè)置口令使用的方法,你也可以告訴服務(wù)器重載授權(quán)表是它知道這個(gè)改變。(在服務(wù)器啟動(dòng)時(shí),它重載表到內(nèi)存中而可能不知道你已經(jīng)修改了它們。)

對(duì)MySQL 3.22和以上版本,你可以用mysqladmin設(shè)置口令:

% mysqladmin -u root password yourpassword

對(duì)于MySQL的任何版本,你可以用mysql程序并直接修改mysql數(shù)據(jù)庫(kù)中的user授權(quán)表:

% mysql -u root mysql
mysql>UPDATE user SET password=PASSWORD("yourpassword") WHERE User="root";

如果你有MySQL的老版本,使用mysql和UPDATE。

在你設(shè)置完口令后,通過(guò)運(yùn)行下列命令檢查你是否需要告訴服務(wù)器重載授權(quán)表:

% mysqladmin -u root status

如果服務(wù)器仍然讓你以root而不指定口令而連接服務(wù)器,重載授權(quán)表:

% mysqladmin -u root reload

在你設(shè)置了root的口令后(并且如果需要重載了授權(quán)表),你將需要在任何時(shí)候以root連接服務(wù)器時(shí)指定口令。
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI