重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
我也经常被1067或者10061困扰!没有办法,mysql就这死样!网上文章又差异太多!当然每个人的机器问题又都不同,我提供的是自己探索出来的,也可以说是大家公认的方式吧!
发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及主动防护网等,在重庆网站建设公司、全网营销推广、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。
1.进入cmd---net stop mysql--当然这一步也可能无效,说是进程意外终止,别管他看下一步!
2.用360卸载掉mysql,记住强力清扫一下,当然你也可以用windows自带的卸载,但是你需要去mysql的安装目录下一般情况都是在C:\Program Files\MySQL\MySQL Server 5.5删除掉my.ini(这是mysql的配置文件)!好了卸载这一步完了,进入下一步!
3.开始---运行(R)----regedit(进入注册表编辑器)-----选中我的电脑(下面有5个文件夹)---记住了网上的错误就在这里就有分歧了,千万记住不只有那三个地方,当然既然我说不止了,我一定会告诉你一个万能的方法,接着告诉你为什么这么做!看下一步!
4.点编辑下面的查找,在输入框中输入mysql,然后点查找下一个!只要是找到的,你就删除掉!然后重复第四步!一直查找弹出一个对话框--注册表中没有mysql注册项!为止!
原理 : 540960971(hello world)嘿嘿,纯属手工打的!希望能够帮到你!因为我也是深受其害!这次自己探索出的办法!保管好用! 有什么不会的尽管问我!
MySQL无法启动、无法停止解决方法(安全设置后容易出现)
最近在Windows 2003上的MySQL出现过多次正常运行时无法连接数据库故障,现象是无法连接数据库,也无法停止MySQL或重启MYSQL,重启机子也没有效果,由于每次都是草草尝试各种方法搞定即可,一直没有深入研究,下次一定把图和故障现象系统归纳一下。本文先列一下常见的解决方法。
一、确认MYSQL已经配置且正确
重新配置
如果是重新安装的MYSQL,请确认安装后的MYSQL经过第一次配置,否则会缺少my.ini文件,配置方法,可以在安装到最后一步时选择,现在开始配置MYSQL,或在程序组中运行MYSQL配置向导。配置完成后,要确保my.ini文件中[mysqld]字段下至少有basedir安装目录路径和datadir数据库路径。
配置之前,如果原来已经有过MySQL配置,可以先在MYSQL向导中进行执行一次REMOVE INSTANCE,然后再重新配置。
覆盖数据表
默认的MYSQL数据库会安装到My Document下,所以如果您的数据库目录在其它路径下,可以先把MYSQL停止掉,然后把数据库剪切到其它路径,然后拷贝相关数据表进入同一目录即可。
如果MYSQL数据表使用不同的账户,还需要在MYSQL创建账户,或直接使用原来的MYSQL数据表覆盖(需确认之前的MSYQL数据表是未损坏的)。
解决无法启动
遇到无法启动MYSQL时常见解决方法:
A、先使用命令C:\Program files\mysql\bin\mysqladmin-u root -p shutdown来关闭MYSQL
B、再在cmd命令行下,执行net start mysql启动mysql。
二、1067错误常见解决方法
故障现象
如果在停止MYSQL(net stop mysql)或启动MYSQL时,出现1067错误,错误信息“MySql 服务正在停止...系统出错(A system error has occurred.)...系统发生 1067 错误(System error 1067 has occurred.),进程意外终止(The process terminated unexpectedly.)”等。
常见解决方法
如果以前一直运行OK的,请先按照上面的“无法启动”解决方法执行一次看看。
如果进行过Remove Instance操作,再次重建时后,一定要检查my.ini文件中的datadir是否已被还原了,如果该地址下数据库不存在,也将报告1067错误,只需要修改成真实的数据库目录地址,然后手动启动即可。
检查MYSQL目录权限
检查my.ini文件中[mysqld]字段下是否有basedir安装目录路径和datadir数据库路径,my.ini可能需要出现在两个地方,MYSQL的安装目录和Windows目录(假设是windows环境)下,都要检查一下。
有时候删除%windir%/my.ini文件然后再重新配置也可以解决,再次配置后检查一下Windir目录下是否有my.ini文件,有时把安装目录下最新的my.ini拷贝过去覆盖一下也能解决问题。
如果是Linux环境,试一下把mysql.server拷贝至/etc/rc.d/init.d/下,然后再运行chkconfig mysql.server,之后就可以在命令行中设置PATH、使用命令执行mysql启动。
三、非法关机造成的MYSQL无法启动问题
如果是因为非法关机等原因导致MYSQL无法启动或启动有问题的,最好使用重新安装的或确认是OK的MYSQL数据表及ibdata1、mysql.pid、ib_logfile0等文件进行覆盖,天缘试过遇到过多次这种情况,就是原来的MYSQL表有问题了,总是无法启动,但是更换成新表就可以。
四、重装MYSQL
发现MYSQL有问题时,最便捷的方法,是先把mysql卸载掉,然后重装重新配置,具体方法如下:
1、卸载MYSQL,清理掉安装目录和Windows目录下的my.ini文件。
2、检查任务管理器中是否还有mysql进程,如果有,可以把mysqld.exe杀掉,或者先杀掉再卸载也可以。
3、在cmd命令窗口,执行:sc delete mysql,该命令是清理注册服务命令。
3. 重装 mysql
如果是安全设置以后出现这个问题,可能是因为mysql以低权限运行的时候因为密码策略等问题导致,大家看恶意将mysql的启动用户更下下密码,然后在服务项里设置下即可。
如下图
注意:先到windows管理器中修改下密码
问题:
安装好phpstudy后,Apache可以启动,Mysql无法启动。
原因:
之前已经装过Mysql,要把系统服务里面的MySQL删除,留下MySQL服务。
解决办法:
在cmd命令行下输入:sc delete mysql即可删除mysql服务。
当我们在cmd里使用 sc delete 服务名,来删除服务的时候,报错误,SC OpenService 失败5:拒绝访问,这似乎是因为权限不够。
解决方法:
第一步、我们必须先取得管理员权限,以管理员权限运行cmd.exe。
第二步、在输入命令:sc delete 要删除的服务名
phpstudy中apache或mysql无法启动
phpstudy中apache或mysql无法启动,启动一下没了
明显端口被占用了,假如我们需要确定谁占用了我们的80端口,3306端口
对网站来说,网络apatche服务器是默认 80,数据库mysql是3306
端口占有两种解决方法:
法1:把被占用的 进程结束掉 (如果你没装iis的话,也就是 你把能关的软件都关闭 尤其迅雷什么的)
法 2:改apatche 的端口
具体如下:
----------------------------------------
法一、如何查看某个端口被谁占用,把被占用的 进程结束掉
我们在启动应用的时候经常发现我们需要使用的端口被别的程序占用,但是我们又不知道是被谁占用,这时候我们需要找出“真凶”,如何做到呢?
方法/步骤
第一步:开始----运行----cmd,或者是window+R组合键,调出命令窗口
第二步:输入命令:netstat -ano,列出所有端口的情况。在列表中我们观察被占用的端口,比如是49157,首先找到它。
(对网站来说,网络apatche服务器是默认 80,数据库mysql是3306)
第三步:查看被占用端口对应的PID,输入命令:netstat -aon|findstr "49157",回车,记下最后一位数字,即PID,这里是2720
第四步:有两种方法
1..续输入tasklist|findstr "2720",回车,查看是哪个进程或者程序占用了2720端口,结果是:svchost.exe
2..
或者是我们打开任务管理器,切换到进程选项卡,在PID一列查看2720对应的进程是谁,如果看不到PID这一列,如下图:
则我们点击[查看]---[选择列],将PID(进程标示符)前面的勾打上,点击确定。
这样我们就看到了PID这一列标识,看一下2720对应的进程是谁,如果没有,我们把下面的显示所有用户的进程前面的勾打上,就可以看到了,映像名称是svchost.exe,描述是,Windows的主进程,与上面命令查看的完全一致。
第五步:结束该进程:在任务管理器中选中该进程点击”结束进程“按钮,或者是在cmd的命令窗口中输入:taskkill /f /t /im Tencentdl.exe。
-------------------------------------------------------------------------
法二:phpstudy修改端口
phpstudy控制面板中,点击 其他选项
:将端口改为 8080
但需要注意,修改端口后,在输入网址的时候,要带着端口
如:(注意有冒号)
localhost:8080
localhost:8080/zz/index.php
可能是你安装的时候,选择扩张功能时,应该选择安装mysql,前面不再显示巴叉,PHP.ini里面就会有。ext文件夹里也会有libmysql.dll了,我也碰到过这种情况。重新安装试试。
其实错误信息已经提示了错误的原因:
Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given
警告:mysqli_select_db()的第1个参数应该是mysqli,而你给的是字符串
Warning: mysql_error() expects parameter 1 to be resource, object given in
警告:mysql_error()的第1个参数应该是个资源句柄,而你给的是个对象
据我的判断,可能你没有注意到这两个函数的正确用法,以下是这两个参数的原型:
bool mysqli_select_db ( mysqli $link , string $dbname )
string mysql_error ([ resource $link_identifier = NULL ] )
据此,建议代码修改如下:
$db_selected=mysqli_select_db($link,"homework")
至于“警告:mysql_error()的第1个参数应该是个资源句柄,而你给的是个对象”,这个错误的原因,据我的判断,你还需要检查下 $link 是不是正确连接到mysql了。