SQL server数据库相关运维脚本
创建数据库
USE master;
go
DECLARE @database_name NVARCHAR(50);
DECLARE @data_file NVARCHAR(50);
DECLARE @sql NVARCHAR(MAX);
--数据库名
SET @database_name = '数据库名';
--数据文件存放路径,该路径必须存在。
--路径中不允许使用空格等字符,建议使用全英文,
--如 D:\SQLSERVER\DATA
SET @data_file = '数据文件存放路径';
SET @sql =
'CREATE DATABASE' + QUOTENAME(@database_name) + ';' +
'ALTER DATABASE ' + @database_name + ' ADD FILEGROUP [NNC_DATA01];' +
'ALTER DATABASE ' + @database_name + ' ADD FILE(NAME = nnc_data01 , FILENAME = ' + '''' + @data_file + '\' + @database_name + '_nnc_data01_Data.NDF '+''''+', SIZE = 500, FILEGROWTH = 200) TO FILEGROUP [NNC_DATA01]' +
'ALTER DATABASE ' + @database_name + ' ADD FILEGROUP [NNC_DATA02];' +
'ALTER DATABASE ' + @database_name + ' ADD FILE(NAME = nnc_data02 , FILENAME = ' + '''' + @data_file + '\' + @database_name + '_nnc_data02_Data.NDF '+''''+', SIZE = 500, FILEGROWTH = 200) TO FILEGROUP [NNC_DATA02]' +
'ALTER DATABASE ' + @database_name + ' ADD FILEGROUP [NNC_DATA03];' +
'ALTER DATABASE ' + @database_name + ' ADD FILE(NAME = nnc_data03 , FILENAME = ' + '''' + @data_file + '\' + @database_name + '_nnc_data03_Data.NDF '+''''+', SIZE = 500, FILEGROWTH = 200) TO FILEGROUP [NNC_DATA03]' +
'ALTER DATABASE ' + @database_name + ' ADD FILEGROUP [NNC_INDEX01];' +
'ALTER DATABASE ' + @database_name + ' ADD FILE(NAME = nnc_index01 , FILENAME = ' + '''' + @data_file + '\' + @database_name + '_nnc_index01_Data.NDF '+''''+', SIZE = 500, FILEGROWTH = 200) TO FILEGROUP [NNC_INDEX01]' +
'ALTER DATABASE ' + @database_name + ' ADD FILEGROUP [NNC_INDEX02];' +
'ALTER DATABASE ' + @database_name + ' ADD FILE(NAME = nnc_index02 , FILENAME = ' + '''' + @data_file + '\' + @database_name + '_nnc_index02_Data.NDF '+''''+', SIZE = 500, FILEGROWTH = 200) TO FILEGROUP [NNC_INDEX02]' +
'ALTER DATABASE ' + @database_name + ' ADD FILEGROUP [NNC_INDEX03];' +
'ALTER DATABASE ' + @database_name + ' ADD FILE(NAME = nnc_index03 , FILENAME = ' + '''' + @data_file + '\' + @database_name + '_nnc_index03_Data.NDF '+''''+', SIZE = 500, FILEGROWTH = 200) TO FILEGROUP [NNC_INDEX03]'
EXEC sp_executesql @sql;
go
--切换数据库
use 数据库名;
go
--启用快照隔离
declare @exec_stmt nvarchar(4000) select @exec_stmt='ALTER DATABASE '+db_name()+' set read_committed_snapshot ON ' exec (@exec_stmt)
go
--禁用并行
sp_configure 'show advanced options',1
go
reconfigure with override
go
sp_configure 'max degree of parallelism',1
go
reconfigure with override
go
查询数据库表
select* from sysobjects where xtype='U'
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
L = 日志
FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
UQ = UNIQUE 约束(类型是 K)
V = 视图
X = 扩展存储过程
根据列名查询数据库表
SELECT name FROM sysobjects WHERE id IN (SELECT id FROM syscolumns WHERE name = '字段名' )
标签:name,运维,database,FILEGROUP,DATABASE,NNC,server,SQL,ALTER
From: https://www.cnblogs.com/muphy/p/18046734