sqlserver数据库如何修改实例名称

sqlserver修改实例名称

1
2
3
4
5
6
7
8
9
10
11
12
if serverproperty('servername')  @@servername
begin
    declare @server sysname
    set @server = @@servername
    exec sp_dropserver @server = @server
    set @server = cast(serverproperty('servername') as sysname)
    exec sp_addserver @server = @server , @local = 'LOCAL'
END
-- 删除旧的服务器名
EXEC sp_dropserver 'C9FV63M3';
-- 添加新的服务器名
EXEC sp_addserver 'C9FV63M32', 'local';

修改完,重启服务器。执行

1
2
SELECT serverproperty('servername') --服务器名称
SELECT @@SERVERNAME   --数据库实例名

SQLSERVER 修改实例名以及架构信息

1. GUI的方式 后者是 alter database 的方式修改 instance的名字

2. 在全局的安全性下面创建用户.

3. 在实例的安全性下面创建架构和用户(架构名与用户名一直, 使用新实例的名字).

4. 使用sa 执行命令 sp_change_users_login ‘Update_one’,’NEWname’,’NEWname’

5. 删除之前的的老的架构名和实例.(如果提示有连接 在执行完第六步之后 重新删除.)

6.修改数据库实例中表和视图的属主:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<strong>use newname;</strong>
DECLARE @table SYSNAME;
DECLARE @schema SYSNAME;
DECLARE @new_schema SYSNAME;
<strong>SELECT @schema </strong><strong>= 'oldname' --原有属主
SELECT @new_schema = 'newname' --</strong><strong>新属主</strong>
DECLARE csr CURSOR FOR 
SELECT o.name, u.name FROM sys.objects o 
INNER JOIN sys.schemas u ON o.schema_id = u.schema_id 
WHERE o.type in( 'u','p','v','tf','fn','if') AND u.name = @schema 
OPEN csr;
FETCH NEXT FROM csr INTO @table, @schema
WHILE @@FETCH_STATUS = 0 
BEGIN 
exec ('ALTER SCHEMA ' + @new_schema + ' TRANSFER [' + @schema + '].[' + @table + ']');
FETCH NEXT FROM csr INTO @table, @schema;
END 
CLOSE csr 
DEALLOCATE csr ;

自己写的 改天验证一下.

到此这篇关于sqlserver修改实例名称的文章就介绍到这了,更多相关sqlserver修改实例名称内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/database/mssql/12370.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部