如何讓新安裝的MySQL數據庫變得更安全

在你自己安裝了一個新的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";

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

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

% mysqladmin -u root status

如果服務器仍然讓你以root而不指定口令而連接服務器,重載授權表:

% mysqladmin -u root reload

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

· 把年齡相仿的獅虎熊放一起,誰更厲害?結果出人意料

很多人都想知道獅子、老虎和熊打起來誰最厲害,于是便有好事之人把這三種動物關在一起...

· 湖北宜昌三峽壩區水面驚現神秘動物

近日,湖北宜昌,一段視頻在當地熱傳:有網友在三峽壩區拍到神秘動物,體型碩大數米長...

· 什麽是語段?語段的類型以及和句群、段落的區別與聯系是什麽?

句群是最高級的語言單位。 段落(自然段)是章法單位...

 
如何安全的配置和應用MySQL數據庫
MySQL已經成爲當前網絡中使用最多的數據庫之一,特別是在Web應用上,它占據了中小型應用的絕對優勢。這一切都源于它的小巧易用、安全有效、開放式許可和多平台,更主要的是它與三大Web語言之一——PHP的完美結合。 但...查看完整版>>如何安全的配置和應用MySQL數據庫
 
使一個新的MySQL安裝更安全
你自己安裝了一個新的MySQL服務器後,你需要爲MySQL的root用戶指定一個目錄(缺省無口令),否則如果你忘記這點,你將你的MySQL處于極不安全的狀態(至少在一段時間內)。 在Unix(Linux)上,在按照手冊的指令安...查看完整版>>使一個新的MySQL安裝更安全
 
Mysql數據庫發布安全修複程序
  MySQL公司發布了一個安全更新,以修複其客戶端-服務器協議中的錯誤,這些錯誤可能會讓惡意攻擊者利用緩沖區溢出的漏洞獲得敏感信息。  這家開放源代碼公司本周早些時候發布了其MySQL 5.0.21版的更新程序。這次...查看完整版>>Mysql數據庫發布安全修複程序
 
講解MySQL數據庫與ASP.NET如何強強聯手
由于富有競爭力的價格和易于使用,MySQL在市場占有率方面逐步提升。開放源代碼社區爲了擴展MySQL的使用範圍,開發出了.Net框架(.NET Framework)中可以使用的數據庫連接器。我們就來學習一下如何在.Net應用程序中使用...查看完整版>>講解MySQL數據庫與ASP.NET如何強強聯手
 
如何采用ODBC接口訪問MySQL數據庫
MySQL的ODBC接口實現是通過安裝MyODBC驅動,這個驅動程序是跨平台的。如果在Linux等unix體系操作系統下使用,需要先安裝iodbc這些第三方ODBC標准支援平台。 簡單的ASP示例代碼:dim sql,mysqlset sql = server.creat...查看完整版>>如何采用ODBC接口訪問MySQL數據庫