|
保障MySQL安全的14个最佳方法
MySQL数据库一贯以高性能、高可性和易用性著称,它已经成为世界上最流行的开源数据库。
本文关键字:
MySQL数据库
然后,通过Linux访问MySQL控制台就要使用新用户名了:
$ MySQL -u another_username -p
5、移除测试(test)数据库
在默认安装的MySQL中,匿名用户可以访问test数据库。我们可以移除任何无用的数据库,以避免在不可预料的情况下访问了数据库。因而,在MySQL控制台中,执行:
> DROP DATABASE test;
6、禁用LOCAL INFILE
另一项改变是禁用”LOAD DATA LOCAL INFILE”命令,这有助于防止非授权用户访问本地文件。在PHP应用程序中发现有新的SQL注入漏洞时,这样做尤其重要。
此外,在某些情况下,LOCAL INFILE命令可被用于访问
操作系统上的其它文件(如/etc/passwd),应使用下现的命令:
MySQL> LOAD DATA LOCAL INFILE '/etc/passwd' INTO TABLE table1
更简单的方法是:
MySQL> _selectload_file("/etc/passwd")
为禁用LOCAL INFILE命令,应当在MySQL配置文件的[MySQLd]部分增加下面的参数:
set-variable=local-infile=0
7、移除匿名账户和废弃的账户
有些MySQL数据库的匿名用户的口令为空。因而,任何人都可以连接到这些数据库。可以用下面的命令进行检查:
mysql> _select* from mysql.user where user="";
在安全的系统中,不会返回什么信息。另一种方法是:
mysql> SHOW GRANTS FOR ''@'localhost';
mysql> SHOW GRANTS FOR ''@'myhost';
如果grants存在,那么任何人都可以访问数据库,至少可以使用默认的数据库“test”。其检查方法如下:
shell> mysql -u blablabla
责编:王雅京
![]()
著作权声明:kaiyun体育官方人口 文章著作权分属kaiyun体育官方人口 、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
|
最新专题
|
|