关于登录SQL Server 原来的数据库及创建的user消失,重启电脑后恢复的原因

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:

其实我这个题目说的比较非主流,但是这个确实是我遇到这个问题时看到的第一表象。

就是在昨天上班的时候,打开电脑,登录SQL Server 2008,想操作原先已有的一个数据库,却发现找不到了,然后仔细一看,许多数据库都消失不见了。

由于这个数据库是一个共享的,允许局域网内远程登录的,害我误会了同事将数据库删除。并且还发现为了当时让这个数据库共享创建的一个公共账号居然也在SQL Server的【安全性】-【登录名】中消失了。

就是觉得很诡异。

后来我觉得有点不对劲,就重新启动了一下电脑,然后奇迹发生了,居然之前的数据库和登录账号都回来了,不过我就是没有对问题打破砂锅问到底的良好品质,既然解决了,就OK了。

但是今天我又遇到了这个情况,这次我可不能坐视不理了(因为我的电脑重启一次需要好长时间,我重启不起了),然后就想找到问题的原因。


1、首先我在想,昨天重启电脑就好使了,重启电脑跟SQL Server有什么潜在的联系呢?想来想去,应该是重启了SQL Server深层的一些东西,因为也不知道从哪下手,就去了SQL Server配置管理器去看看有没有什么发现。


wKioL1M-QfPTCl5FAAJPRMOkgfU584.jpg


2、在这里我突然发现了一个与以前的不同点,因为之前写了篇博客是讲如何对SQL Server创建远程连接的,当时截了个图是这样的

wKioL1M-Qs2Qu2ejAAR18VRCvHk039.jpg

而此时SQL Server服务里变成了这样子

wKioL1M-QymwY-XJAASMifMvKAE822.jpg

对比一下两张图,从SQL Server服务的【状态】栏中我们会发现这两张图的不同,就是蓝色框框的部分,这个时候SQL Server(MSSQLSERVER)是已停止的状态。


3、于是我就想把这个服务启动,至少整成与原来一样啊,然后就启动这一项了,结果却报错

wKiom1M-RDqw2NSLAAR2EwTM2Gs726.jpg

报错:请求失败或服务未及时响应。有关详细信息,请参见事件日志或其他适用的错误日志。


这下问题就变得专业一些了,我就根据弹出框的提示内容在网上搜了一下,说是有一个相关的服务没有开启,我的工作机是win7系统,如图方法找到这个服务

wKioL1M-RbyTqhDXAAFufbNC2dk053.jpg


4、进入服务后,我们可以看到

wKiom1M-RimBJpdzAAh7u3DSspQ297.jpg

SQL Server(MSSQLSERVER)这一项没有启动,当然,我一定要再启动一下喽~,


5、但是当我启动这项服务的时候,又给我弹出了一个提示框,顿时我觉得自己越陷越深。有点开始冒冷汗。j_0009.gifj_0009.gifj_0009.gif

wKioL1M-RqDQvUmHAADAxQvKjo0263.jpg

报错:本地计算机上的sql server服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。

然后又去百度,指示说可能是与SQL Server配置管理器中的 【TCP/IP协议】和【VIA协议】有关系。


6、而此时我的工作机的情况是

wKiom1M-R8uzvwQvAAJmJh6QLso273.jpg

TCP/IP协议】是已启用状态,【VIA】是已禁用状态。资料建议是将这两项都先禁用,于是我把【TCP/IP协议】给禁用了。


7、然后我又回到服务页,去启动SQL Server(MSSQLSERVER)这一项,好消息是,可以启动了。

wKiom1M-SKDg5PtdAABPafBnwPU488.jpg


8、我又回到SQL Server配置管理器中的SQL Server服务,去试着开启SQL Server(MSSQLSERVER)项,又一好消息,也启动成功了。

wKioL1M-SYewDDPQAAA-7tKhqf0857.jpg

9、这时我再回头把刚才禁用的【TCP/IP协议】开启,因为这块是我之前为了可以让其他局域网机器远程登录设置的,应该有用,所以最好设成跟以前一种状态。


10、最后重新打开SQL Server 2008,登录之后,就会发现以前的数据库就都在了。j_0003.gif


具体产生这个问题的原因,我真是无力去探究,有说是因为那个TCP/IP协议端口把服务里的MSSQLSERVER服务端口给占用了导致的。到底是不是这个原因,我真就没兴趣去追根究底了,如果有知道的朋友可以留个言,指导一下。










本文转自 我不会抽烟 51CTO博客,原文链接:http://blog.51cto.com/zhouhongyu1989/1390501,如需转载请自行联系原作者

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
15天前
|
SQL 算法 数据库
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
88 6
|
2天前
|
SQL 数据管理 关系型数据库
如何在 Windows 上安装 SQL Server,保姆级教程来了!
在Windows上安装SQL Server的详细步骤包括:从官方下载安装程序(如Developer版),选择自定义安装,指定安装位置(非C盘),接受许可条款,选中Microsoft更新,忽略警告,取消“适用于SQL Server的Azure”选项,仅勾选必要功能(不包括Analysis Services)并更改实例目录至非C盘,选择默认实例和Windows身份验证模式,添加当前用户,最后点击安装并等待完成。安装成功后关闭窗口。后续文章将介绍SSMS的安装。
6 0
|
2天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
|
4天前
|
SQL XML 数据库
sql导入数据库命令
在SQL Server中,数据库导入可通过多种方式实现:1) 使用SSMS的“导入数据”向导从各种源(如Excel、CSV)导入;2) BULK INSERT语句适用于导入文本文件;3) bcp命令行工具进行批量数据交换;4) OPENROWSET函数直接从外部数据源(如Excel)插入数据。在操作前,请记得备份数据库,并可能需对数据进行预处理以符合SQL Server要求。注意不同方法可能依版本和配置而异。
|
10天前
|
SQL 安全 网络安全
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
22 0
|
11天前
|
SQL 数据库
数据库SQL语言实战(二)
数据库SQL语言实战(二)
|
11天前
|
SQL 关系型数据库 数据库
【后端面经】【数据库与MySQL】SQL优化:如何发现SQL中的问题?
【4月更文挑战第12天】数据库优化涉及硬件升级、操作系统调整、服务器/引擎优化和SQL优化。SQL优化目标是减少磁盘IO和内存/CPU消耗。`EXPLAIN`命令用于检查SQL执行计划,关注`type`、`possible_keys`、`key`、`rows`和`filtered`字段。设计索引时考虑外键、频繁出现在`where`、`order by`和关联查询中的列,以及区分度高的列。大数据表改结构需谨慎,可能需要停机、低峰期变更或新建表。面试中应准备SQL优化案例,如覆盖索引、优化`order by`、`count`和索引提示。优化分页查询时避免大偏移量,可利用上一批的最大ID进行限制。
38 3
|
14天前
|
SQL 监控 数据库
数据库管理与电脑监控软件:SQL代码优化与实践
本文探讨了如何优化数据库管理和使用电脑监控软件以提升效率。通过SQL代码优化,如使用索引和调整查询语句,能有效提高数据库性能。同时,合理设计数据库结构,如数据表划分和规范化,也能增强管理效率。此外,利用Python脚本自动化收集系统性能数据,并实时提交至网站,可实现对电脑监控的实时性和有效性。这些方法能提升信息系统稳定性和可靠性,满足用户需求。
48 0
|
SQL Shell 数据库
SQLServer删除登录记录用户名和密码
原文:SQLServer删除登录记录用户名和密码 介绍: 作为一名开发人员都会知道我们做的项目都要用到数据库,数据库都需要账号和密码,然而问题来了,做的东西多了那些没用的账号和密码还在哪里纠缠着我们。
1619 0
|
15天前
|
SQL 人工智能 算法
【SQL server】玩转SQL server数据库:第二章 关系数据库
【SQL server】玩转SQL server数据库:第二章 关系数据库
52 10