前言
最近在做项目的时候,用到了数据库,在打开数据库的时候,结果数据库打不开了,本着遇到问题解决问题的态度,成功解决了,开心。下面就来看看小编都遇到什么问题了吧。
叙述
问题一: 远程过程调用失败
出现这个问题的原因是什么呢,经过查询主要是因为我的电脑上安装了VS 2012,由于VS2012在装的时候,自动安装“Microsoft SQL Server 2012 Express LocalDB”服务。导致原本的SQL2008无法正常工作。Microsoft SQL Server 2012 Express LocalDB是SQL2012具有的实例,SQL server 2008也具有自己的实例,但是SQL server2008的实例比VS 2012的等级要低,在数据库运行的时候会优先调用高几倍的实例,所以先调用了VS 2012的Microsoft SQL Server 2012 Express LocalDB,所以就出现了这样的结果啦。一起来看一下解决方法。
方法一:卸载Microsoft SQL Server 2012 Express LocalDB
控制面板—>程序—>程序和功能,把Microsoft SQL Server 2012 Express LocalDB卸载,按照常理说,应该可以打开了,但是小编又遇到了一个问题,请接着往下看哦。
方法二:升级SqlServer2008R2为SP1或者SP2
问题二:SQL Server(MSSQLSERVER) 请求失败或服务未及时响应,有关详细信息,请参见事件日志或其他的适用的错误日志。
当我问题一解决以后,本来以为SQL server可以正常运行了,结果还出现了第二个问题,真是惊喜不断啊。看看第二个问题。
为什么会出现这个问题呢,主要是因为端口被占用的原因,看看具体的解决方法。
(1)打开事件查看器,查看Windows日志,点击应用程序,查看Windows错误日志
(2)打开之后看到启动失败的相关日志信息
(3)点开其中一个,会看见以下错误提示。
其他的错误提示如下:
1)TDSSNIClient 初始化失败,出现错误 0x2740,状态代码 0xa。原因: 无法初始化 TCP/IP 侦听器。 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
2)TDSSNIClient 初始化失败,出现错误 0x2740,状态代码 0x1。原因: 初始化失败,出现基础结构错误。请检查以前的错误。 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
3)由于网络库中存在内部错误,所以无法启动网络库。要确定原因,请查看错误日志中紧位于此错误之前的那些错误。
4)SQL Server 无法生成 FRunCM 线程。请查看 SQL Server 错误日志和 Windows 事件日志,获取有关可能发生的相关问题的信息。
(4)点击SQL server 网络配置下的MSSQLSERVER的协议,在右侧的页面中选择TCP/IP协议
(5)右键点击TCP/IP协议,选择“属性”,需要修改连接数据库的端口地址
小结
数据库中的学问很大,慢慢的积累,慢慢的了解。