• SQLserver2数据库操作


    ——————————————————————————收缩数据库和数据文件————————————————————

    /*使用DBCC SHRINKDATABASE 收缩数据库

    收缩WebShop数据库,剩余可用空间10%*/

    DBCC SHRINKDATABASE(WebShop,10) 

    /*使用DBCC SHRINKFILE收缩数据文件

    将数据库WebShop中名为DataFile1的数据文件收缩到10MB*/

    USE WebShop

    GO

    DBCC SHRINKFILE(DataFile1,10)

    GO

    ———————————————————移动数据库文件———————————————————————————

    /*通过在 ALTER DATABASE语句的FILENAME子句中指定新文件的位置,可以移动系统数据库文件和自定义数据库文件,但是资源数据库文件除外。 (资源数据库移动或者重命名,SQLserver无法启动)

    数据、日志、全文目录文件也可以通过此方法进行移动,此方法在下面情况下可用1)故障恢复,例如因为硬件故障,数据库处于可疑模式或者被关闭;2)预先安排的重定位;3)为预定的磁盘维护操作而进行的重定位。*/

    --数据库文件的逻辑名称才可以运行 ALTER DATABASE语句,要获取逻辑名称可查询sys.master_files 目录视图下的name列

    --确定tempdb数据库的逻辑文件名称以及在磁盘上的当前位置--

    SELECT name,physical_name

    FROM sys.master_files

    WHERE database_id = DB_ID('tempdb');

    GO

    --使用ALTER DATABASE 更改每个文件的位置--

    USE master;

    GO

    ALTER DATABASE tempdb

    MODIFY FILE (NAME = tempdev,FILENAME = 'D:/DATA/tempdb.mdf');

    GO

    ALTER DATABASE tempdb

    MODIFY FILE (NAME = templog,FILENAME = 'D:/DATA/templog.ldf');

    GO

    --停止并且重启SQLserver--

    --验证文件更改--

    SELECT name,physical_name

    FROM sys.master_files

    WHERE database_id = DB_ID('tempdb');

    /*每次启动SQLserver服务时都会重建tempdb,因此不需要从物理意义上移动数据和日志文件,在重启服务是会创建这些文件。重启后,tempdb才继续在当前位置发挥作用*/

    —————————————————————————更改数据库所有者———————————————————————————————

    使用存储过程sp_changedbwner来实现

  • 相关阅读:
    hdu 2602 Bone Collector 01背包
    总结
    类--接口 抽象父类 多态 鸭子类型 格式化方法与析构方法 反射 异常处理 自定义异常 断言
    类--组合 继承 super关键字 面向对象的三大性
    面向对象 名称空间 类与对象
    re正则模块 垃圾回收机制
    常用模块--hashlib hmac:加密 xml xlrd xlwt:excel读|写 configparser subprocess
    常用模块-- random shutil shevle logging sys.stdin/out/err
    常用模块-- time os sys 递归 序列化

  • 原文地址:https://www.cnblogs.com/jaci/p/11273182.html
Copyright © 2020-2023  润新知