top
Loading...
5.6.3.Mysqld安全相關啟動選項
5.6.3. Mysqld安全相關啟動選項

下列mysqld選項影響安全:

·         --allow-suspicious-udfs

該選項控制是否可以載入主函數只有xxx符的用戶定義函數。默認情況下,該選項被關閉,并且只能載入至少有輔助符的UDF。這樣可以防止從未包含合法UDF的共享對象文件載入函數。參見27.2.3.6節,“用戶定義函數安全注意事項”。

·         --local-infile[={0|1}]

如果用--local-infile=0啟動服務器則客戶端不能使用LOCAL in LOAD DATA語句。參見5.6.4節,“LOAD DATA LOCAL安全問題”。

·         --old-passwords

強制服務器為新密碼生成短(pre-4.1)密碼哈希。當服務器必須支持舊版本客戶端程序時,為了保證兼容性這很有用。參見5.7.9節,“MySQL 4.1中的密碼哈希處理”。

·         (OBSOLETE) --safe-show-database

在以前版本的MySQL中,該選項使SHOW DATABASES語句只顯示用戶具有部分權限的數據庫名。在MySQL 5.1中,該選項不再作為現在的 默認行為使用,有一個SHOW DATABASES權限可以用來控制每個賬戶對數據庫名的訪問。參見13.5.1.3節,“GRANT和REVOKE語法”。

·         --safe-user-create

如果啟用,用戶不能用GRANT語句創建新用戶,除非用戶有mysql.user表的INSERT權限。如果你想讓用戶具有授權權限來創建新用戶,你應給用戶授予下面的權限:

mysql> GRANT INSERT(user) ON mysql.user TO 'user_name'@'host_name';

這樣確保用戶不能直接更改權限列,必須使用GRANT語句給其它用戶授予該權限。

·         --secure-auth

不允許鑒定有舊(pre-4.1)密碼的賬戶。

·         --skip-grant-tables

這個選項導致服務器根本不使用權限系統。這給每個人以完全訪問所有的數據庫的權力!(通過執行mysqladmin flush-privilegesmysqladmin reload命令,或執行FLUSH PRIVILEGES語句,你能告訴一個正在運行的服務器再次開始使用授權表。)  

·         --skip-name-resolve

主機名不被解析。所有在授權表的Host的列值必須是IP號或localhost

·         --skip-networking

在網絡上不允許TCP/IP連接。所有到mysqld的連接必須經由Unix套接字進行。

·         --skip-show-database

使用該選項,只允許有SHOW DATABASES權限的用戶執行SHOW DATABASES語句,該語句顯示所有數據庫名。不使用該選項,允許所有用戶執行SHOW DATABASES,但只顯示用戶有SHOW DATABASES權限或部分數據庫權限的數據庫名。請注意全局權限指數據庫的權限。

作者:mysql.com
來源:http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html
北斗有巢氏 有巢氏北斗