今天还原数据库发生了问题,已经操作过很多次了,结果还是出现了问题,造成了数据库变成了单用户,所有人都连接不上了。特此记录如下:
本来是要备份正式数据库并在相同服务器上在还原一个相同数据库作为测试使用。
1. 先备份数据库并创建一个新的空数据库,数据库名H3CloudTest
2. 还原数据库
2.1 常规
目标数据库名会默认为备份数据库,记得修改
2.2 文件
还原为地址会默认是备份数据库的地址,记得修改,尤其要修改数据库名字,不能与原有数据库名字重复
2.3 选项
勾选覆盖现有数据库,取消结尾日志备份勾选,不勾选关闭到目标数据库的现有连接
3. 我就是勾选了关闭到目标数据库的现有连接,此操作会时还原过程中的数据库变成单用户模式,如果正常还原成功的话没有问题,还原成功后还会变成多用户,但是一旦还原失败就会使数据库一直为单用户模式。,我就是还原失败下变成了单用户无法连接上数据库了。此时要使用SQL语句将数据库变为多用户模式,语句如下:
USE master; --使用master视图
DECLARE @SQL VARCHAR(MAX);
SET @SQL=''
SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID) --杀掉该进程
FROM master..sysprocesses
WHERE dbid=DB_ID('H3Cloud'); --这里的H3Cloud是单用户的数据库名
EXEC(@SQL);
ALTER DATABASE H3Cloud SET MULTI_USER; --改成多用户
今天还原数据库发生了问题,已经操作过很多次了,结果还是出现了问题,造成了数据库变成了单用户,所有人都连接不上了。特此记录如下: 本来是要备份正式数据库并在相同服务器上在还原一个相同数据库作为测试使用。1. 先备份数据库并创建一个新的空数据库,数据库名H3CloudTest2. 还原数据库2.1 常规目标数据库名会默认为备份数据库,记得修改2.2 文件还原为地址会默认是备份数据库的地址,记得修改,尤其要修改数据库名字,不能与原有数据库名字重复2.3 选项勾...
declare @ddlstring nvarchar(max);
declare @dbname varchar(200);
set @dbname='BaseComponents';
declare tmpcur cursor
for select distinct spid as spid from sys.syspr
原本想分离本地
数据库
,结果不小心就对SVN上的
数据库
执行了分离操作,因为当时SVN上的
数据库
是多个人在用,因此当然也没有分离成功,但是此时本地连接SVN时这个
数据库
名称后面就出现了“单个用户”字样,如下图:无法打开数据列表,报错如下:原因是进行分离操作时自动将该
数据库
改为
了
单用户
模式,可通过执行如下语句恢复
多用户
模式。USE master;
DECLARE @
SQL
VARCHAR(MAX);
SELECT @
SQL
=@
SQL
+'; KILL '+RTRIM(SPID)
FROM master..sysprocesses
WHERE dbid=DB_ID('dbname');
EXEC(@
SQL
);
ALTER
DATABASE
db
DataShow是一款基于.net Framework2.0的Microsoft
SQL
Server
数据库
建模工具,工具全部采用C#代码完成。该工具旨在利用自定义表字典的功能来设计强大的
数据库
控件或者页面,减少开发周期和代码量。
本工具具有如下特点:
1、支持自定义表的种类,将创建的表予以分类。
在创建种类时您可以为种类设置此种表的模板列,在创建该种类的表时,工具会提示您载入模板列,这种设计可以减少同类表多次创建时的工作量。
2、种类包含一个前缀,有利于
数据库
表的命名规范。
3、创建/编辑表定义时,您可以拷贝、粘贴多个列以减少创建表时的工作量。
4、每个列都包含编辑格式、列宽、显示格式等多种自定义属性,在设计控件时,您可以根据这些属性为不同的字段设计不同的编辑控件。
当然除了以上列举的属性外,还有部分未被设计进本工具的属性,如验证属性、查询属性等。关于这方面的应用请参考本工具的预览功能。
5、编辑格式及预览功能支持您自行扩展的用户控件以进行
更
高级的设计。
您可以创建一个项目,添加对DataShow.Interfaces.dll的引用,并实现其中的接口,将编译好的DLL添加到[选项]->[插件]的列表中即可在编辑格式或预览时看到您自定义的用户控件。
6、支持对
数据库
关系的维护。
在创建/编辑表定义时,您都可以打开关系设计界面对关系进行维护。
7、递归式的
数据库
修改。
当您
更
改某个受关系影响的列的数据类型、长度、精度、小数位数等信息时,关系中的其他字段将随之
更
改,这个过程是递归的,所有与该字段有直接或间接关系引用的字段都将受到
更
改。
8、为
更
改生成
SQL
脚本。
使用生成
SQL
脚本的功能,您可以像使用企业管理器一样为任意修改生成
SQL
脚本,通过工具内置的
SQL
执行工具,您可以将
更
改应用于多台开发机上以保持
数据库
的一致。
9、与自定义控件结合,使您在做表定义时即时预览到自定义控件的绑定效果。
10、内置有
SQL
执行工具,该工具是一款简单的查询分析器,目的旨在将您对
数据库
所做的
更
改快速布置到其他开发机上。
复杂的
SQL
语句建议您使用查询分析器完成。
11、表字典生成器让您快速地将本工具使用溶入开发中。
可能您的项目已经着手开发一段时间了,即使是这样,您依然可以让本工具为您效劳。您只需打开表字典生成工具,工具会读取
数据库
中所有的表及字段信息,根据您的配置生成字典。
12、
数据库
设计文档生成功能。
文档生成工具将根据您的表定义和字段定义读取字典表中的信息并将这些信息按照您定义的方式生成
数据库
设计文档。生成方式采用写流方式生成,生成速度快,免去您编写
数据库
文档的麻烦。
13、备份、
还原
、收缩
数据库
功能。
14、表数据预览及编辑功能。
您可以在选项中关闭修改显示的表数据的功能。
15、工具包括多项人性化选项。
16、表定义说明:表工具使用初期,工具会检查您
数据库
中的是否已经存在Dic_Columns、Dic_Datatypes、Dic_Relation、Dic_RelationDetail、Dic_Sequence、Dic_Tables、Dic_TableTemplate以及Dic_TableType,如果您的
数据库
中不存在这些表,工具会自行创建。
Dic_Columns:存储字段信息,各个字段的说明请查看表字义。
Dic_Datatypes:存储数据类型信息。
Dic_Relation:存储表关系,各个字段的说明请查看表字义。
Dic_RelationDetail:存储表关系的字段关联信息,各个字段的说明请查看表字义。
Dic_Sequence:用于生成序列号,一般是用于生成主键编号,请勿修改这个表的数据。
Dic_Tables:存储表的字典信息。
Dic_TableTemplate:存储种类的字段模板,各个字段的说明请查看表字义。
Dic_TableType:存储种类信息。
关于作者:
作者:陈鹏伟
联系方式:QQ 89202269
手机:13788892380。
此工具是本人利用业余时间编写数月的成果,转载请保留作者信息。
由于水平有限且没有专门的测试人员做测试= =!BUG在所难免,如果您有任何意见或建议,或者希望索取源码,欢迎与本人联系。
特别鸣谢:张希禄
我的启蒙老师,这个工具的设计来自他关于DataShow的思路。
希望本工具能为您的开发带来方便!