SQL SERVER2000学习笔记
前几天参加了市信息办的一个SQL SERVER2000技术 培训 讲座,虽然用MSSQL2000有几年了,听了一个上午,还是学到一些东西的。摘录如下: 一、MSSQL安装要点: 自带安装程序 SQLCST.BAT 默认安装服务器和客户端(一切按默认设置) SMSCLI.BAT 默认安装客户端 安
前几天参加了市信息办的一个
SQL SERVER2000技术
培训讲座,虽然用MSSQL2000有几年了,听了一个上午,还是学到一些东西的。摘录如下:
一、MSSQL安装要点:
- 自带安装程序
SQLCST.BAT 默认安装服务器和客户端(一切按默认设置)
SMSCLI.BAT 默认安装客户端 - 安装的License Mode
每服务器处理器mode,该模式仅与版权有关,默认为1,选1与选8在功能上没有任何不同,唯一的不同是你是否真买了支持8个CPU的MSSQL.
每客户端mode 听说是同时支持的CLIENT数,不敢肯定。
建议选每处理器mode. - 数据文件不要装在系统分区。
- 安装时sa口令建议为空(避免安装日志记录明文口令),安装完成后再修改sa口令。
- 安装时不要选local system帐户启动SQLSERVER,据说是该帐户有功能上的限制。
也不要用Administrator帐户,因为为安全考虑,该帐户经常使用并改变口令,容易引发SQLSERVER启动失败。
建议:新建一帐户,加入Administrators Group,用该帐户启动SqlServer。当然如果该帐户的口令变了,必须在SQLSERVER中在修改该帐户的口令。 - 如果OS为win2003,必须打sp1,否则远程client无法访问数据库。
二、安装完成后的配置
- 检查服务器启动配置
- 设成自动启动方式,包括自动启动SQLAGENT.
- 选择混合验证方式
- 修改SA的口令
- 打补丁SP3A
- 设置服务器异常终止时自动重启SQLAGENT.
- 下载最新的联机手册
三、SA的口令为什么不能为空,或过于简单。
口令为空或太简单,很容易受到攻击。假设口令为空。远程用户远程连接上SQLSERVER后执行以下语句就可完全控制计算机:
exec xp_cmdshell "net user peter peter /add"
exec xp_cmdshell "net localgroup administrators peter /add"
四、数据文件和日志文件有关知识
- 数据文件8k/page, 8 pages/盘区
- 8192byte, maxinum row size=8060 byte
- 一行记录不能跨两页存放,即一行记录不能跨8060byte。例外字段(text,image,ntext)
故10万行 * 3K/行所需的存储空间=400M - 日志文件也叫事务日志文件,用户不可以查看。
- 日志文件用于SQLSERVER记录每一笔数据操作(除SELECT操作)
- 日志记录每一笔操作的原数据、新数据、操作。
- checkpoint 每3秒触发一次,检查已有的日志文件,发现有成功的事务,则触发WRITE事件。
四、数据文件和日志文件有关知识
- 数据文件8k/page, 8 pages/盘区
- 8192byte, maxinum row size=8060 byte
- 一行记录不能跨两页存放,即一行记录不能跨8060byte。例外字段(text,image,ntext)
故10万行 * 3K/行所需的存储空间=400M - 日志文件也叫事务日志文件,用户不可以查看。
- 日志文件用于SQLSERVER记录每一笔数据操作(除SELECT操作)
- 日志记录每一笔操作的原数据、新数据、操作。
- checkpoint 每3秒触发一次,检查已有的日志文件,发现有成功的事务,则触发WRITE事件。
五、数据库的创建
- 数据库名
- 数据文件(数据和日志文件)
逻辑名 物理名
初始大小 最大大小
增长方式 增长额度 - 排序方式(如果为BINARY,那么区别大小写)
- TIPS: 将数据库的故障恢复模型设为完全。
- 如果数据库文件要执行SHRINK操作,最后要预留10%,操作前要注意移动数据位置。
六、为什么要建立多个数据库文件
- 性能考虑: 将经常访问的表分布到不同的物理硬盘。(raid阵列和只有一个硬盘不适用)
- 空间考虑: 适合空间不足情况,增加另外的数据文件。
- 备份考虑: 将历史时刻和当前数据分布到不同的数据文件(通过FileGroup实现)。
七、其他
- 查看 -> 任务版,可以查看数据库的使用情况
- 命令行工具建议用OSQL。
原文转自:http://www.ltesting.net
|