Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10327560
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: 系统运维

2012-10-25 09:30:44

mySQL 学习 --sql跟踪,远程访问  

2012-10-24 15:25:05|  分类: my优化 |  标签: |字号 

mysql中执行的sql跟踪比oracle简单多了,它自身有log。我们只要打开这个log记录,执行sql语句,再查看这个log就可以了。
1. 首先要打开log的开关
使用命令:show variables like '%log%';
能看到一个查询结果:
                                      
mysql 学习(1)- sql跟踪,远程访问 - 流口水的小猪 - 轨迹
 将其设置为ON,使用以下命令:
set global general_log=ON
再查看一下:show variables like '%log%'; general_log的开关应该已经打打开了  
mysql 学习(1)- sql跟踪,远程访问 - 流口水的小猪 - 轨迹
 注意,我们还能看到一个general_log_file, 它有默认值,我们可以修改,也可以不改。
我们修改一下,使用 vi /etc/mysql/my.cnf     (我尝试过用set来设置,但没有成功,只能修改mysql的配置文件了)
增加一行:log=/tmp/my_luyx.log
mysql 学习(1)- sql跟踪,远程访问 - 流口水的小猪 - 轨迹
 重启mysql,再次查看show variables like '%log%';
mysql 学习(1)- sql跟踪,远程访问 - 流口水的小猪 - 轨迹
这样就完全设置好了,在mysql的客户端运行一些sql语句,在/tmp/my_luyx.log中就能查看到刚才执行的sql语句了。


============Mysql 非本机连接报10061错误==============
在Ubuntu上使用sudo apt-get install mysql-server-5.0 安装了mysql,在外面访问不了mysql,但是在Ubuntu上访问是没有问题的。
mysql 学习(1)- sql跟踪,远程访问 - 流口水的小猪 - 轨迹
 提示如图的:can't connect to mysql server on *** (11061)
于是开始查找原因:
1. mysql已经打开, 用户已经创建,且用户的访问权限是@%
2. 3306端口是不是没有打开?
使用nestat命令查看3306端口状态:
~# netstat -an | grep 3306
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

从结果可以看出3306端口只是在IP 127.0.0.1上监听,所以拒绝了其他IP的访问。解决方法 :修改/etc/mysql/my.cnf文件。 打开文件,找到下面内容:
-----------
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address  = 127.0.0.1
-----------
把上面这一行注释掉或者把127.0.0.1换成合适的0.0.0.0,或者注释掉。

重新启动后,重新使用netstat检测:
~# netstat -an | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN
这时就可以连接了
阅读(959) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~