易截截图软件、单文件、免安装、纯绿色、仅160KB

使用root用户运行MYSQL的安全隐患

当你连接一个MySQL服务器时,你通常应该使用一个口令。口令不以明文在连接上传输。
所有其他信息作为能被所有人读懂的文本被传输。如果你担心这个,你可使用压缩协议(MySQL3.22和以上版本)使事情变得更难。甚至为了使一切更安全,你应该安装ssh(见http://www.cs.hut.fi/ssh)。用他,你能在一个MySQL服务器和一个MySQL客户之间得到一个加密的TCP/IP连接。
为了使一个MySQL系统安全,强烈需求你考虑下列建议:
1:对所有MySQL用户使用口令。记住,如果other_user没有口令,所有人能简单地用mysql -u other_user db_name作为所有其他的人登录。对客户机/服务器应用程式,客户能指定所有用户名是常见的做法。在你运行他以前,你能通过编辑mysql_install_db脚本改动所有用户的口令,或仅仅MySQL root的口令,象这样:
shell> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD(’new_password’)
WHERE user=’root’;
mysql> FLUSH PRIVILEGES;
2:不要作为Unix的root用户运行MySQL守护进程。mysqld能以所有用户运行,你也能创造一个新的Unix用户mysql使一切更安全。如果你作为其他Unix用户运行mysqld,你不必改动在user表中的root用户名,因为MySQL用户名和Unix 用户名没关系。
你能作为其他Unix用户编辑mysql.server启动脚本mysqld。通常这用su命令完成。
对于更多的细节,见18.8 怎样作为一个一般用户运行MySQL。
如果你把一个Unix root用户口令放在mysql.server脚本中,确保这个脚本只能对root是可读的。
检查那个运行mysqld的Unix用户是唯一的在数据库目录下有读/写权限的用户。
3:不要把process权限给所有用户。mysqladmin processlist的输出显示出当前执行的查询正文,如果另外的用户发出一个UPDATE user SET password=PASSWORD(’not_secure’)查询,被允许执行那个命令的所有用户可能看得到。mysqld为有process权限的用户保留一个额外的连接, 以便一个MySQL root用户能登录并检查,即使所有的正常连接在使用。
4:不要把file权限给所有的用户。有这权限的所有用户能在拥有mysqld守护进程权限的文件系统那里写一个文件!为了使这更安全一些,用SELECT ... INTO OUTFILE生成的所有文件对每个人是可读的,并且你不能覆盖已存在的文件。file权限也能被用来读取所有作为运行服务器的Unix用户可存取的文件。这可能被滥用,例如,通过使用LOAD DATA装载“/etc/pa


相关文档:

MySQL的表锁问题

在mysql手册里面有一段描述关于lock tables的语法的.
LOCK TABLES    tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}    [, tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}] ...UNLOCK TABLESREAD
当表不存在 WRITE 写锁时 READ 读锁被执行,这该状态下,当前线程 ......

浅谈MySQL慢查询日志及microslow patch(msl patch)

       mysql(包括所有5.*系列,5.1.21之前)的慢查询日志默认是以秒为单位的,可以通过set [session|global] long_query_time=1这个最低也就是可以设置到1秒,对于0.5,0.005之类就无能为力了,这时候可以有microslow patch(msl patch)补丁来完成这一工作,这个功能的好处自然不言而喻.
 &nb ......

PHP/MYSQL实现按字母检索

方法一:建一个拼音表 t_cosler ,存放每个字母开头的第一个汉字的编号和最后一个汉字的编号。   
BatchFile code+------+--------+-------+  
| f_PY | cBegin | cEnd  |  
+------+--------+-------+  
| A    |  45217 | 45252 | & ......

Linux系统下修改MySQL的root密码

第一种方法:
root用户登录系统
usr/local/mysql/bin/mysqladmin -u root -p password 新密码
enter password 旧密码
第二种方法:
root用户登录mysql数据库
mysql> update mysql.user set password=password("新密码")where User="root";
mysql> flush privileges;
mysql> quit ;
mysql忘记root密码如何 ......

完美解决mysql下utf 8的乱码问题


完美解决mysql下utf-8的乱码问题
建表时先加上default charset=utf8;
插入中文数据之前(Mysql命令提示符下)是用set names gb2312;
在php页面中设置是mysql_query('SET NAMES UTF8');
在php页面(已设定为utf8后)中插入中文数据不会出现乱码,应该插入数据库的时候就是以utf8字符集插入中文数据的故不会出现问题!
在php ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号