最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL數(shù)據(jù)庫安全配置介紹

 更新時間:2011年03月06日 16:24:43   作者:  
MySQL數(shù)據(jù)庫所在的主機的安全性是最首要的問題,如果主機不安全,被攻擊者控制,那么MySQL的安全性也無從談起。其次就是數(shù)據(jù)目錄和數(shù)據(jù)文件的安全性,也就是權(quán)限設(shè)置問題。因此MySQL數(shù)據(jù)庫安全配置是至關(guān)重要的。

3、外部網(wǎng)絡(luò)安全

MySQL數(shù)據(jù)庫安裝好以后,Unix平臺的user表是這樣的:

mysql> use mysql;

Database changed

mysql> select Host,User,Password,Select_priv,Grant_priv from user;

4 rows in set (0.00 sec)

Windows平臺的user表是這樣的:

mysql> use mysql;

Database changed

mysql> select Host,User,Password,Select_priv,Grant_priv from user;

4 rows in set (0.00 sec)

我們先來看Unix平臺的user表。其中redhat只是我試驗機的機器名,所以實際上Unix平臺的MySQL默認只允許本機才能連接數(shù)據(jù)庫。但是缺省root用戶口令是空,所以當務(wù)之急是給root用戶加上口令。給數(shù)據(jù)庫用戶加口令有三種方法:

1)在shell提示符下用mysqladmin命令來改root用戶口令:

shell>mysqladmin -uroot password test

這樣,MySQL數(shù)據(jù)庫root用戶的口令就被改成test了。(test只是舉例,我們實際使用的口令一定不能使用這種易猜的弱口令)

2)用set password修改口令:

mysql> set password for root@localhost=password('test');

這時root用戶的口令就被改成test了。

3)直接修改user表的root用戶口令:

mysql> use mysql;

mysql> update user set password=password('test') where user='root';

mysql> flush privileges;

這樣,MySQL數(shù)據(jù)庫root用戶的口令也被改成test了。其中最后一句命令flush privileges的意思是強制刷新內(nèi)存授權(quán)表,否則用的還是緩沖中的口令,這時非法用戶還可以用root用戶及空口令登陸,直到重啟MySQL服務(wù)器。

我們還看到user為空的匿名用戶,雖然它在Unix平臺下沒什么權(quán)限,但為了安全起見我們應(yīng)該刪除它:

mysql> delete from user where user='';

Windows版本MySQL的user表有很大不同,我們看到Host字段除了localhost還有是%。這里%的意思是允許任意的主機連接MySQL服務(wù)器,這是非常不安全的,給攻擊者造成可乘之機,我們必須刪除Host字段為%的記錄:

4、一些小竅門

1)如果不慎忘記了MySQL的root密碼,我們可以在啟動MySQL服務(wù)器時加上參數(shù)--skip-grant-tables來跳過授權(quán)表的驗證 (./safe_mysqld --skip-grant-tables &),這樣我們就可以直接登陸MySQL服務(wù)器,然后再修改root用戶的口令,重啟MySQL就可以用新口令登陸了。

2)啟動MySQL服務(wù)器時加--skip-show-database使一般數(shù)據(jù)庫用戶不能瀏覽其它數(shù)據(jù)庫。

3)啟動MySQL服務(wù)器時加上--chroot=path參數(shù),讓mysqld守護進程運行在chroot環(huán)境中。這樣SQL語句LOAD DATA INFILE和SELECT ... INTO OUTFILE就限定在chroot_path下讀寫文件了。這里有一點要注意,MySQL啟動后會建立一個mysql.sock文件,默認是在/tmp目錄下。使用了chroot后,MySQL會在chroot_path/tmp去建立mysql.sock文件,如果沒有chroot_path/tmp目錄或啟動MySQL的用戶沒有這個目錄寫權(quán)限就不能建立mysql.sock文件,MySQL會啟動失敗。比如我們加了--chroot=/usr/local/mysql/啟動參數(shù),那么最好建立一個啟動MySQL的用戶能寫的/usr/local/mysql/tmp目錄,當然我們也可以用--socket=path來指定mysql.sock文件的路徑,但這個path一定要在chroot_path里面。

4)啟動MySQL服務(wù)器時加上--log-slow-queries=file參數(shù),這樣mysqld會把SQL命令執(zhí)行時間超過long_query_time的寫入file文件。如果沒有指定=file,mysqld默認會寫到數(shù)據(jù)目錄下的hostname-slow.log。如果只指定了filename,沒有指定路徑,那么mysqld也會把filename寫到數(shù)據(jù)目錄下。我們通過這個日志文件可以找出執(zhí)行時間超長的查詢語句,然后盡可能的優(yōu)化它減輕MySQL服務(wù)器的負擔。

5)如果我們只需本機使用MySQL服務(wù),那么我們還可以加上--skip-networking啟動參數(shù)使MySQL不監(jiān)聽任何TCP/IP連接,增加安全性。(非常推薦)

6)MySQL的更多mysqld啟動選項請見MySQL手冊4.16.4 mysqld Command-line Options

References

MySQL Manual(http://www.mysql.com/documentation/index.html)

晏子的MySQL管理員指南(http://clyan.hongnet.com/index.html)

Access Granted(http://www.devshed.com/Server_Side/MySQL/Access)

相關(guān)文章

  • MySQL設(shè)置白名單限制的實現(xiàn)

    MySQL設(shè)置白名單限制的實現(xiàn)

    白名單是一種機制,用于限制哪些主機可以連接到服務(wù)器,而阻止其他主機的訪問,本文主要介紹了MySQL設(shè)置白名單限制的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-08-08
  • 登錄mysql數(shù)據(jù)庫的幾種方式

    登錄mysql數(shù)據(jù)庫的幾種方式

    本文主要介紹了登錄mysql數(shù)據(jù)庫的幾種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • MySQL提示The InnoDB feature is disabled需要開啟InnoDB的解決方法

    MySQL提示The InnoDB feature is disabled需要開啟InnoDB的解決方法

    這篇文章主要介紹了MySQL提示The InnoDB feature is disabled需要開啟InnoDB的解決方法,簡單分析了MySQL數(shù)據(jù)庫開啟InnoDB引擎的實現(xiàn)技巧,需要的朋友可以參考下
    2016-01-01
  • 阿里云配置MySQL-server?8.0遠程登錄的實現(xiàn)

    阿里云配置MySQL-server?8.0遠程登錄的實現(xiàn)

    我們經(jīng)常會碰到需要遠程訪問數(shù)據(jù)庫的場景,本文主要介紹了阿里云配置MySQL-server?8.0遠程登錄的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • mysql安裝忘記初始密碼簡單有效的解決方法

    mysql安裝忘記初始密碼簡單有效的解決方法

    在本篇文章里小編給大家整理的是一篇關(guān)于mysql安裝忘記初始密碼簡單有效的解決方法,有需要的朋友們參考學習下。
    2020-01-01
  • MySQL之容災(zāi)方案解讀

    MySQL之容災(zāi)方案解讀

    這篇文章主要介紹了MySQL之容災(zāi)方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Mysql Error Code : 1436 Thread stack overrun

    Mysql Error Code : 1436 Thread stack overrun

    I meet with the error while calling stored procedures from the MySql in my Mac system server. It similar as the description below
    2011-07-07
  • 解析MySQL?join查詢的原理

    解析MySQL?join查詢的原理

    這篇文章主要介紹了MySQL?join查詢的原理,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • 你知道m(xù)ysql中空值和null值的區(qū)別嗎

    你知道m(xù)ysql中空值和null值的區(qū)別嗎

    這篇文章主要給大家介紹了關(guān)于mysql中空值和null值區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • 詳解MySQL性能優(yōu)化(一)

    詳解MySQL性能優(yōu)化(一)

    本文對MySQL性能優(yōu)化進行了詳細的總結(jié)與介紹,需要的朋友可以參考下
    2015-08-08

最新評論

横峰县| 台前县| 南汇区| 砀山县| 六盘水市| 成都市| 界首市| 策勒县| 莱州市| 揭东县| 沁水县| 嵊泗县| 宿迁市| 杨浦区| 泸西县| 射阳县| 韶关市| 淅川县| 兴义市| 曲麻莱县| 福鼎市| 龙游县| 呼和浩特市| 衡东县| 大余县| 潮安县| 法库县| 阿鲁科尔沁旗| 潼南县| 和硕县| 棋牌| 乌苏市| 繁昌县| 娄烦县| 读书| 泸西县| 定远县| 柏乡县| 洛川县| 孟村| 仁布县|