- 论坛徽章:
- 0
|
问题是这样的,我写了个简单的程序,基于mysql5.0.端口开放在3306,本机ip 192.168.0.1.用户授权 asd%'@' 拥有一切权限
但是如果我在程序用用 asd@localhost:3306 连接,连接被拒绝。用 asd@192.168.0.1:3306成功。
我用mysql自带的客户端: mysql ,
如果
mysql -u -p -P 1000 这样连接的话,都能连上,换句话说就是无视 -P指定的端口,在任何端口都能连接成功。
如果
mysql -h 192.168.0.1 -u .... 这样连接的话,这样才会去检查3306端口,才唯一能在3306连接成功。
问题有3个:
1,为什么我用 netstat 找不到 打开的3306,只能找到那个 socket文件。
2,这个是怎么一回事?
3,mysql的mysql程序为什么要这么写?据说mysql当本机的情况下会走 unix socket文件这种连接方式,不走网口,我想请教下大家这样有啥好处,具体怎么做?
ps:
目前正在使用长宽上网,经常掉线,mysql官方网站上不去,google上不去,所以只要在这里发帖请教大家了。
ps2:
因为mysql是c/c++ 写的,所以发在这里,希望版主不要将移走哦。 |
|