SQL Server常用管理命令小结
对于需要管理SQL Server的朋友们,掌握以下SQL命令和技巧是至关重要的。以下是大家可能感兴趣的一些重要操作和查询,建议收藏以备后用。
一、数据库版本和系统信息
1. 查看数据库版本:`select @@version`。
2. 查看数据库所在机器操作系统参数:`exec master..xp_msver`。
二、数据库启动和实例信息
1. 查看数据库启动参数:`sp_configure`。
2. 查看数据库启动时间:通过查询系统进程表获取,具体命令为`select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1`。查看数据库服务器名和实例名使用以下命令:`print 'Server Name...............' + convert(varchar(30),@@SERVERNAME)`和`print 'Instance..................' + convert(varchar(30),@@SERVICENAME)`。
三、数据库列表和用户信息
1. 查看所有数据库名称及大小:使用`sp_helpdb`命令。若需重命名数据库,可使用`sp_renamedb 'old_dbname', 'new_dbname'`命令。
2. 查看所有数据库用户登录信息:`sp_helplogins`。查看用户所属角色信息:`sp_helpsrvrolemember`。修复迁移服务器时出现的孤立用户,可以使用fix_orphan_user脚本或LoneUser过程。更改数据对象的用户属主,可以使用`sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner'`命令,但请注意更改对象名的任一部分都可能破坏脚本和存储过程。可以使用`add_login_to_aserver`脚本将服务器上的数据库用户登录信息备份出来。查看某数据库下对象级用户权限使用`sp_helprotect`命令。
四、链接服务器和远程登录信息
查看链接服务器信息:使用`sp_helplinkedsrvlogin`命令。查看远端数据库用户登录信息:使用`sp_helpremotelogin`命令。
五、数据对象大小和索引信息
查看某数据库下某个数据对象的大小:使用`sp_spaceused @objname`命令,还可以使用`sp_tables`过程查看最大的N个表(默认为50)。查看某个数据对象的索引信息使用:`sp_helpindex @objname`命令,更详细的索引情况可以使用SP_NChelpindex过程查看,即`SP_NChelpindex @objname`。对于键值DML操作频繁的表,建议使用非clustered索引并设置fillfactor参数为默认值,因为clustered索引会将记录按物理顺序排列,占用较少的空间。数据库中的秘密:数据对象的约束、存储过程与函数、用户和进程信息
当你深入了解某个数据库时,你会意识到它就像一个庞大的宝库,充满了数据、存储过程、函数以及更多其他元素。今天,让我们一起如何查看数据库中的关键信息。
一、查看数据对象的约束信息
如果你想知道某个数据对象(如表)的约束信息,可以使用sp_helpconstraint命令配合@objname参数进行查询。这会提供关于主键、外键等约束的详细信息。
二、查看所有存储过程和函数
要查看数据库里所有的存储过程和函数,首先使用use命令指定数据库,然后运行sp_stored_procedures。想要查看这些存储过程和函数的源代码,可以使用sp_helptext命令。
三、查找包含特定字符串的数据对象名称
如果你知道某个字符串,并想知道哪些数据对象包含这个字符串,可以通过查询sysments表来实现。使用like操作符配合%通配符来查找包含特定字符串的数据对象名称。
四、创建加密的存储过程或函数
当你在创建存储过程或函数时,如果想保护其代码不被轻易查看,可以在创建语句中加入WITH ENCRYPTION参数。加密后的存储过程和函数可以通过sp_decrypt过程来解密。
五、查看数据库的用户和进程信息
想要了解数据库里的用户和进程情况,可以使用sp_who命令。如果想要查看活动用户和进程的信息,可以加上'active'参数。sp_lock命令可以查看数据库中的锁的情况。需要注意的是,进程号1-50通常是SQL Server系统内部使用的。
六、查看进程正在执行的SQL语句
想要知道某个进程正在执行什么SQL语句,可以使用db inputbuffer()函数或者改进后的sp_who3过程。sp_who3过程能更直观地展示进程运行的SQL语句。
七、检查死锁
当数据库中发生死锁时,可以使用sp_who_lock过程来检查。这个命令能帮助你快速定位到死锁的原因和涉及的进程。
八、查看和收缩数据库文件的方法
想要查看数据库文件的大小,可以使用db sqlperf(logspace)命令。如果某些文件过大,你可以通过特定的命令来收缩数据库文件。比如,对于简单恢复模式的数据库,可以先备份日志,然后使用db shrinkfile命令来收缩文件。
九、数据库位置查询
想要知道数据库的物理存储位置,可以通过查询sysfiles系统表来获取。这将帮助你了解数据库文件的存放路径和大小等信息。
SQL Server提供了丰富的命令和工具来帮助我们管理和查询数据库的各种信息。通过熟练掌握这些命令和工具,我们可以更好地管理和优化数据库性能,确保数据库的安全和稳定运行。
平面设计师
- SQL Server常用管理命令小结
- 如何撰写一份有效的工程款申请报告
- 微信小程序倒计时功能实例代码
- Git提交代码错了吃后悔药的几种常用办法(场景分
- 第四章之BootStrap表单与图片
- 解决微信返回上一页,页面中的AJAX的请求,对
- Fine Uploader文件上传组件应用介绍
- javascript css实现三级目录(简单的)
- asp中使用redim、preserve创建动态数组实例
- 双层ajax嵌套(可多层)用法实例
- Spring Controller autowired Request变量
- 盖革计数管有辐射吗
- PHP调用OpenOffice实现word转PDF的方法
- js验证身份证号有效性并提示对应信息
- Webpack 实现 Node.js 代码热替换
- 通过唯一索引S锁与X锁来了解MySQL死锁套路