初学的mysql网友好象经常会碰到mysql无法连接的错误。特开贴收集这样问题的现象和原因。先自己扔块砖头出来。=====================================================================================================
故障现象 : 无法连接 mysql
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : mysqld数据库服务没有启动。
检查 :在windows 的任务管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。确认服务已经启动。
处理 :启动mysqld 服务
=====================================================================================================
故障现象 : 无法连接 mysql
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : mysqld数据库服务没有启动。
检查 :在windows 的任务管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。确认服务已经启动。
处理 :启动mysqld 服务
=====================================================================================================
故障现象 : 无法连接 mysql
错误信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server
原因 : mysql服务器没有赋予此客户端远程连接的权限。
检查 :在mysql服务器本地查询mysql库里user表对应的host是否包含客户端机器的IP(%为不限制IP允许远程连接)。
处理 :修改mysql库下的user表:update user set host = '%' where user ='XXX';flush privileges;
====================================================================================
=====================================================================================================
故障现象 : 无法连接 mysql
错误信息 :ERROR 1045 (28000): Access denied for user 'usera'@'localhost' (using password:YES)
原因 : 用户账号并未创建
检查 :以管理员ROOT登录后,show grants for 'usera'@'localhost'; 或者 select user from mysql.user; 确认用户账号是否存在。
处理 :创建用户账号。
=====================================================================================================
什么权限的用户才可以创建用户。
The CREATE USER statement creates new MySQL accounts. To use it, you must have the global CREATE USER privilege or the INSERT privilege for the mysql database
-----------------------------------------------------------
废话不说了,我前两天就碰到一个,不知道算不算。
把mysql库中的user表中user字段为“root”值的记录的host字段改成了“*”(这个就是网上那些该死的转载blog的误导,说是能支持所有ip访问)这样改的结果是死活都进不去了,输入密码后就“嘟”一声没了,包括在本机localhost进。解决方法是备份mysql安装路径下的data文件夹,接着把mysql完全卸载,然后重启电脑,重新安装mysql,最后将data文件夹下除了“mysql”文件夹之外的所有文件夹和文件复制到新装的mysql的路径下,即可解决。mysql库中的user表中user字段为“root”值的记录的host字段的默认值是“localhost”,远程连接报错的朋友们只需要重新运行一下mysql的配置程序,在输入密码的界面有一个checkbox的地方打上勾(允许远程连接),就行了,根本不是网上那n多狗屁blog转载的那样,第一是改表法,第二是授权法,真是狗屁。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
授权
故障现象 : 无法连接 mysql
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : mysqld 客户端与服务端端口不一致。
检查 :在my.ini 设置下服务端口 这种情况特别是客户都与远程服务器端口不一致 很容易出现的问题
处理 :启动mysqld 服务
=====================================================================================================
故障现象 : 无法连接 mysql windows
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : 同时开启大量的tcp端口和而仅有一小部分短命端口时,当他们处于time_wait时期,mysql可能会跑错端口
检查 :在windows 默认会开启5000个临时端口供调用,而他们的生命仅仅是120s,意思是在关闭端口的时候会有120秒的延时
处理 :减少不不必要的tcp端口。
修改注册表
=====================================================================================================
================================
C:\Documents and Settings\Administrator>mysql -uroot -p
Enter password: ***
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:
ES)
==================================
"telnet 127.0.0.1 端口" 不通或在服务列表里面检查服务没存在2、访问没权限
检查mysql.user表里面的登陆帐号的权限3、网络不通4、防火墙屏蔽了端口5、密码错误
故障现象 : 无法连接 mysql
错误信息 :ERROR 2002 (HY000): Can't connect to local MySQL server server through socket '/var/lib/mysql/mysql.sock'(111)
原因 : mysqld的mysql.sock没在相应的位置。
处理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否启动
2.改权限 chown -R mysql:msyql /var/lib/mysql
3.修改/etc/my.cnf (注意:先停数据库)
[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[client]
socker=/var/lib/mysql/mysql.sock
4.启动数据库
=====================================================================================================
===================================================================================
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : mysqld数据库服务没有启动。
检查 :在windows 的任务管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。确认服务已经启动。
处理 :启动mysqld 服务
===================================================================================
错误信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server
原因 : mysql服务器没有赋予此客户端远程连接的权限。
检查 :在mysql服务器本地查询mysql库里user表对应的host是否包含客户端机器的IP(%为不限制IP允许远程连接)。
处理 :修改mysql库下的user表:update user set host = '%' where user ='XXX';flush privileges;
===================================================================================
错误信息 :ERROR 1045 (28000): Access denied for user 'usera'@'localhost' (using password:YES)
原因 : 用户账号并未创建
检查 :以管理员ROOT登录后,show grants for 'usera'@'localhost'; 或者 select user from mysql.user; 确认用户账号是否存在。
处理 :创建用户账号。
===================================================================================
错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
原因 : mysqld 客户端与服务端端口不一致。
检查 :在my.ini 设置下服务端口 这种情况特别是客户都与远程服务器端口不一致 很容易出现的问题
处理 :启动mysqld 服务
===================================================================================
错误信息 :ERROR 2002 (HY000): Can't connect to local MySQL server server through socket '/var/lib/mysql/mysql.sock'(111)
原因 : mysqld的mysql.sock没在相应的位置。
处理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否启动
2.改权限 chown -R mysql:msyql /var/lib/mysql
3.修改/etc/my.cnf (注意:先停数据库)
[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[client]
socker=/var/lib/mysql/mysql.sock
4.启动数据库
===================================================================================
常用检查步骤。1. PING hostname 或 PING 189.xx.xx.xx 确认服务器IP层通信没有问题。如果PING通则继续(2),PING不通则找网络方面专家协助。
2. TELNET hostname 3306 确认服务器TCP层通信没有问题。(你的端口号可能不是3306),如通则继续,如不通,请检查mysqld 是否已经在运行,防火墙屏蔽了端口。
3. 检查用户权限, show grants ...
确认已关闭防火墙 mysql 服务启动 连接数为0
就是无法连接
dos 环境下 net start mysql 成功
dos 环境下 运行 mysql root root 成功
但是无法解决 无法连接问题 急待解决 谢谢
<?php
$conn = mysql_connect("localhost","root","123456") or die("数据库服务器连接错误".mysql_error());
mysql_select_db("gbook",$conn);
mysql_query("set names 'GBK'"); //使用中文编码;
?>//这里是add.php
<?php
include("conn.php");if($_POST['submit']){
$sql="insert into ibog_leveword (id,user,title,content,time) ".
"value (``, `$_POST[user]`, `$_POST[title]`, `$_POST[content]`, now( ) )";
mysql_query($sql,$conn);
echo "发表成功";}?>
<form action="add.php" method="post" name="myform" onsubmit="return CheckPost();">
<b>您的用户名:</b><br><input name="user" type="text" size="55"><br>
<b>您的标题:</b><br><input name="title" type="text" size="55"><br>
<b>您的内容:</b><br><textarea name="content"></textarea><br>
<input name="submit" type="submit" value="Post your comments">
</form>请各位高手帮我看下,怎么写不进MYSQL中,
该怎么写????
原因 : 用户账号并未创建
检查 :以管理员ROOT登录后,show grants for 'usera'@'localhost'; 或者 select user from mysql.user; 确认用户账号是否存在。
处理 :创建用户账号
我用的是root账户,但是还是会提示这些
故障现象 : 本地无法 mysql -u root -p 用原来的密码登录,但可以用无密码,远程必须用原密码登录
错误信息 :ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
原因 : 未知,不知道是否mysql的新密码控制策略
检查 :mysql -u root 密码空登录无问,远程用navica mysql无密码有问题,有密码无问题
处理 :暂时先把本地登录的密码去掉
版本环境:mysql Ver 14.14 Distrib 5.1.56, for debian-linux-gnu (i486) using readline 6.2
=====================================================================================================求助,不知道大家有一样的情况没有?
mysql_init (&mysql);
if(!mysql_real_connect(&mysql,"localhost","root","welcom","mydb",3306,NULL,0))
{
AfxMessageBox("数据库连接失败");
return FALSE;
}数据源已添加 可就是连不上 直接跳到数据库连接失败
Error No. 2003
Can't connect to MySql server on '192.168.238.23'(10065)这个应该是没有允许所在IP段的访问
按照网上说的方法仍没解决,楼主是否碰见过?
有可能是你的服务器tcp/ip端口没打开造成的。
在TCP/IP设置里看看。
C:\Windows\system32>sc query mysqlSERVICE_NAME: mysql
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0C:\Windows\system32>net start mysql
请求的服务已经启动。请键入 NET HELPMSG 2182 以获得更多的帮助。
C:\Windows\system32>mysql -uroot -p
Enter password: ******
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10051)C:\Windows\system32>
==============================================================================
这个怎么解决呀???????????????????
什么问题??
试过很多方法都不行,重装了n次,就差重装系统了,依然是10067
错误信息:
[ERROR] Can't create IP socket: No such file or directory
[ERROR] Aborting不知道是什么原因~~
什么问题??
真心虐心啊。
谢谢