一、mysqld 进程没有正常运行遇到这种情况首先到服务器上看看 mysqld 进程是否活着,采用的命令:
二、客户端不能和进程 mysqld 通信如果 MySQL 服务器上的 mysqld 进程运行正常,我们再看看客户端能不能和 mysqld 进行通信,使用下面的命令进行网络连通的测试:telnet localhost 3306
如果本地能通,再到客户端的机器上把 localhost 换成 MySQL 服务器的 ip 地址进行测试。如果不能通,通常有两种原因,一种原因是 OS 或网络的问题,或者是防火墙;另一种原因是 mysqld 自身根本没有侦听客户端的连接请求, mysqld 启动后对于客户端的侦听是分三种情况。
第一种情况
是使用参数 --skip-networking 跳过侦听客户端的网络连接,用下面的命令我们可以看到 MySQL 根本没有侦听 3306 端口。
第二种情况
使用参数 --bind-address 后面增加对客户端访问 IP 地址的限制,例如只侦听本地的连接
三、账户密码的问题最后一种情况是账户密码的问题,应付这种情况我们有个有力的工具就是查看 MySQL 的 error log, error log 记载信息的详细程度上由参数 --log-error-verbosity 进行控制的
㈡ 数据库出错
可能原因:1)内存不足;2)操作系统不支持bug。
MySQL的错误
信息:无法连接到MySQL服务器SQL:
错误:不能创建一个新线程(errno的12);如果你不出来的可用内存,你可以咨询errno的错误的手册,为可能操作系统的依赖。
数据库服务器问题,数据库操作无法创建新线程。一般是有以下3个方面的原因:
1、MySQL 线程开得太多。
2、服务器系统内存溢出。
3、环境软件损坏或系统损坏。
2、独立主机用户:
1)进入 phpmyadmin 的 mysql 数据库中的 user 表,对数据库的用户进行编辑,修改 max_connections 的值。适当的改小一点。
3)mysql版本更改为稳定版本
4)优化网站程序的sql等等
㈢ 数据库服务器连接错误Access denied for user 'root'@'localhost' (using password: YES)
Access denied for user 'root'@'localhost' (using password:YES)
我的解决办法是重新设置root用户密码,在Windows平台下操作步骤如下:
1、以系统管理员身份登录到系统;
2、如果MySQL服务器正在运行,停止它。
如果是作为Windows服务运行的服务器,进入服务管理器:开始菜单->控制面板->管理工具->服务
如果服务器不是作为服务而运行的,可能需要使用任务管理器来强制停止它。
3、创建1个文本文件,并将下述命令置于单一行中:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
用任意名称保存该文件。在本例中,该文件为C:\mysql-init.txt。
4、进入DOS命令提示:开始菜单->运行-> cmd
假定你已将MySQL安装到C:\mysql。如果你将MySQL安装到了另一位置,请对下述命令进行相应的调整。
在DOS命令提示符下,执行命令:
C:\mysql\bin\>mysqld-nt --init-file=C:\mysql-init.txt
在服务器启动时,执行由“--init-file”选项(作用:在启动时从指定的文件中读取SQL命令)命名的文件的内容,更改根用户密码。当服务器成功启动后,应删除C:\mysql-init.txt。
5、如果起动MySQL服务器出错,把进程mysqld-nt.exe关闭。然后重启它,OK。
6、或者停止MySQL服务器,然后在正常模式下重启它。如果以服务方式运行服务器,应从Windows服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。
应能使用新密码进行连接。
㈣ SQL 数据库连接服务器失败是什么原因
由以下几个原因:x0dx0ax0dx0a1.数据库引擎没有启动 x0dx0ax0dx0a有两种启动方式:x0dx0a(1)开始->程序->Microsoft SQL Server 2008->SQL Server 2008外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动",并确保"启动类型"为自动,不要为手动,否则下次开机时又要手动启动;x0dx0ax0dx0a(2)可打开:开始->程序->Microsoft SQL Server 2008->配置工具->SQL Server Configuration Manager,选中SQL Server 2008服务中SQL Server(MSSQLSERVER) ,并单击工具栏中的"启动服务"按钮把服务状态改为启动;x0dx0ax0dx0a 使用上面两种方式时,有时候在启动的时候可能会出现错误[/b],不能启动,这时就要查看"SQL Server 2008配置管理器"中的SQL Server 2008网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁止.然后再执行上述一种方式操作就可以了。x0dx0ax0dx0a2.进行远程连接时,是否已允许远程连接.x0dx0ax0dx0aSQL Server 2008 在默认情况下仅限本地连接.我们可以手动启用远程连接.在上面第一种方式中,找到Database Engine,单击"远程连接",在右侧将"仅限本地连接(L)"改为"本地连接和远程连接(R)",并选中"同时使用TCP/IP和named pipes(B)".x0dx0ax0dx0a3.如果是远程连接,则还要查看连接数据库的语句是否正确,登录账户是否正确,密码是否正确等.x0dx0ax0dx0a我在一次局域网内连接数据库时,就要因为连接字符串出了问题,在局域网内一台机子连接另一台机子上数据库时,把Data Source=装有数据库的另一台机子的IP.我在连接数据库时总是出现上面的错误,查了好长时间,后来发现,IP没有正确到传到连接字符串,原来我在连接时,使用的是本地,即127.0.0.1,输入的IP没有传到连接字符串
㈤ 为什么wordpress建立数据库连接时出错
其实这个问题还是比价常见的。
一般的解决办法如下:
方法一:重启数据库
如果你是正常使用网站,在没有进行任何风险操作的情况下遇到这种情况,很可能是数据库挂掉了,这种解决方法很简单,重启数据库就可以了
打开宝塔面板,选择软件商店 – MySQL
此时,如果MySQL状态是下图一样的停止状态的话就表示数据库处于停止状态,点击设置
保存配置后,再刷新网页就不会有错误了
如何避免WordPress经常出现数据库连接错误
如果只是出现一次错误,我们通过上面的2个方法修复就可以了,但是如果自己的WordPress经常出现数据库连接错误,我们可以做些什么呢,
可以参见这篇文章:WordPress建立数据库连接时经常出错怎么办
㈥ 如何解决未找到或无法访问数据库服务器
一共有七步,具体步骤如下:
1、打开Sql server 管理配置器;
2、点击MSSQLSERVER的协议,在右侧的页面中选择TCP/IP协议;
3、右键点击TCP/IP协议,选择“属性”,修改端口地址;
4、跳出来的对话框,找到“IP3”,更改IP地址 为自己电脑的IP地址,选择启;
5、“IPALL”的所有端口改成“1433”;
6、重新启动服务;
7、通过以上1-6步骤设置好端口,重新打开SQL Server Management Studio,在服务器名称输入:(local)或者127.0.0.1,即可登录数据库了。
㈦ 建设网站时 对不起,数据库服务器连接失败!
1. 确保服务器端的数据库中存在sa,并支持混合登录模式.默认安装的时候,可能会忽略建立sa.
2. 确保服务器端的数据库是支持远程调用的.打开SQL server Management Studio,选择该数据库,右键菜单"Properties",在打开的对话框中选择Connections,把Allow remote connections to this server选上.
3. 确保服务器端的SQL服务的TCP/IP是Enable的.打开SQL server Configuration Manager. 选择SQL server 2005 NetworkConfiguration下的Protocols for SQL2005( 我安装的SQL示例名为SQL2005), 把Named Pipes和TCP/IP都修改为Enabled,默认是Disabled.
4. 确保服务器端的SQL实例的远程调用是支持TIP/IP和named pipes的. 打开SQL server Surface Area Configuration Manager,在打开的页面中选择Surface Area Configuration for Services and Connections.选中实例的Remote Connections,把Using both tcp/IP and namedpipes选中.
5. 重启服务器端的SQL server 2005服务,确保SQL server Agent和SQL server Browser的服务也启动了. 默认都是需要手动启动,可以改成Automatic.
6. 因为服务器端的操作系统是WinXp+SP2,所以还需要检查防火墙.确保防火墙中的1433端口打开了.[实际解决方法:]打开SQL server Surface Area Configuration Manager,在SQL Server2005服务中启动SQL Server
打开SQL server Surface Area Configuration Manager,在SQL Server2005网络配置中启动Named Pipes和TCP/IP~