6)Java JDBC:
a)检查查询字串是否用了PreparedStatement对象
4、些小窍门
1)如果不慎忘记了MySQLroot密码我们可以在启动MySQL服务器时加上参数--skip-grant-tables来跳过授权表验证 (./safe_mysqld
--skip-grant-tables &)这样我们就可以直接登陆MySQL服务器然后再修改root用户口令重启MySQL就可以用新口令登陆了
2)启动MySQL服务器时加上--skip-show-database使般数据库用户不能浏览其它数据库
3)启动MySQL服务器时加上--chroot=path参数让mysqld守护进程运行在chroot环境中这样SQL语句LOAD DATA INFILE和SELECT ... INTO
OUTFILE就限定在chroot_path下读写文件了这里有点要注意MySQL启动后会建立个mysql.sock文件默认是在/tmp目录下使用了
chroot后MySQL会在chroot_path/tmp去建立mysql.sock文件如果没有chroot_path/tmp目录或启动MySQL用户没有这个目录写权限就不能
建立mysql.sock文件MySQL会启动失败比如我们加了--chroot=/usr/local/mysql/启动参数那么最好建立个启动MySQL用户能写
/usr/local/mysql/tmp目录当然我们也可以用--=path来指定mysql.sock文件路径但这个path定要在chroot_path里面
4)启动MySQL服务器时加上--log-slow-queries[=file]参数这样mysqld会把SQL命令执行时间超过long_query_time写入file文件如果没
有指定=filemysqld默认会写到数据目录下hostname-slow.log如果只指定了filename没有指定路径那么mysqld也会把filename写到
数据目录下我们通过这个日志文件可以找出执行时间超长查询语句然后尽可能优化它减轻MySQL服务器负担
5)如果我们只需本机使用MySQL服务那么我们还可以加上--skip-networking启动参数使MySQL不监听任何TCP/IP连接增加安全性
最新评论