MySQL使用中应该注意的几个地方

MySQL使用中应该注意的几个地方,第1张

MySQL的23个注意事项:
1。如果客户端和服务器之间的连接需要穿越不受信任的网络,那么就需要SSH隧道来加密这个连接的通信。

2.使用set password语句修改用户的密码。有三个步骤。首先“mysql -u root”登录数据库系统,然后“mysql >更新mysql”。用户设置密码=密码(' newpwd ')”,最后执行“刷新权限”。

3.需要防范的攻击有窃听、篡改、回放、拒绝服务等。,不涉及可用性和容错。所有的连接、查询等操作都是通过使用基于ACL的安全措施,即访问控制列表来完成的。也有一些对SSL连接的支持。

4.除root之外的任何其他用户都不允许访问mysql主数据库中的用户表;

用户表中存储的加密用户密码一旦泄露,他人就可以随意使用用户名/密码对应的数据库;

5.使用grant和revoke语句控制用户访问;

6.不使用明文密码,使用md5()和sha1()等单向哈希函数设置密码;

7.不要用字典里的单词做密码;

8.采用防火墙去除50%的外部危险,让数据库系统在防火墙后面工作,或者放在DMZ区域;

9.使用nmap从Internet扫描端口3306,或使用telnet server_host 3306进行测试。不允许从不受信任的网络访问数据库服务器的TCP端口3306,需要设置在防火墙或路由器上;

10.为了防止非法参数被恶意传入,比如,where ID=234,但别人输入where ID=234或1=1,导致全部显示,所以在web表单中使用“”或“”使用字符串,在动态URL中%22表示双引号,%23表示英镑符号,%27表示单引号;将未经检查的值传递给mysql数据库是非常危险的;

11.向mysql传递数据时检查大小;

12.当应用程序需要连接数据库时,应该使用通用用户帐号,只对用户开放少数必要的权限;

13.在每个编程接口(C C++ PHP Perl Java JDBC等)中使用特定的“转义符”函数。);

在互联网上使用mysql数据库时,一定很少使用明文数据传输,而是使用SSL和SSH加密方式传输数据;

14.学会使用tcpdump和strings工具检查传输数据的安全性,如tcpdump-l-I eth0-w-src或dstport 3306 | strings。以普通用户身份启动mysql数据库服务;

15.不使用表的连接符号,而是选择参数-skip-skip-symbolic-links;

16.确保只有启动数据库服务的用户才有权限读写mysql目录中的文件;

17.不要向非管理用户支付进程或超级权限。mysqladmin processlist可以列出当前执行的查询文本;超级权限可以用来切断客户端连接,改变服务器运行参数状态,控制复制数据库的服务器;

18 .不向除管理员之外的用户支付文件权限,以防止将数据'/etc/passwd '加载到表中,然后用select显示它的问题;

19.如果不相信DNS服务公司的服务,只能在主机名权限表中设置IP数字地址;

20.使用max_user_connections变量使mysqld服务进程限制指定帐户的连接数;

21.grant语句还支持资源控制选项;

22.启动mysqld服务进程的安全选项开关,- local-infile=0 = 0或1。如果为0,则客户端程序不能使用本地负载数据。授权的一个例子是MySQL上的grant insert(用户)。用户到“用户名”@“主机名”;如果使用-skip - skip-grant-tables系统,将不会对任何用户的访问进行访问控制,但是可以使用mysqladmin flush-privileges或mysqladmin reload来打开访问控制;默认情况下,show databases语句对所有用户开放,并且可以使用-skip-show-databases关闭。

23.当您遇到错误1045 (28000)拒绝用户“root”@“localhost”(使用密码:否)的访问时,您需要重置密码。具体方法是:先用-skip - skip-grant-tables参数启动mysqld,然后执行MySQL-u root MySQL,MySQL > update user set password = password(' new password ')其中user = ' rootmysql >刷新权限;,最后重启mysql。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » MySQL使用中应该注意的几个地方

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情