SQL SERVER2000学习笔记

发表于:2007-05-25来源:作者:点击数: 标签:笔记sql前几天Server2000学习
前几天参加了市信息办的一个SQL SERVER2000技术 培训 讲座,虽然用MSSQL2000有几年了,听了一个上午,还是学到一些东西的。摘录如下: 一、MSSQL安装要点: 自带安装程序 SQLCST.BAT 默认安装服务器和客户端(一切按默认设置) SMSCLI.BAT 默认安装客户端 安
前几天参加了市信息办的一个SQL SERVER2000技术培训讲座,虽然用MSSQL2000有几年了,听了一个上午,还是学到一些东西的。摘录如下:

一、MSSQL安装要点:

  1. 自带安装程序
    SQLCST.BAT   默认安装服务器和客户端(一切按默认设置)
    SMSCLI.BAT    默认安装客户端
  2. 安装的License Mode
         每服务器处理器mode,该模式仅与版权有关,默认为1,选1与选8在功能上没有任何不同,唯一的不同是你是否真买了支持8个CPU的MSSQL.
         每客户端mode 听说是同时支持的CLIENT数,不敢肯定。
         建议选每处理器mode.
  3. 数据文件不要装在系统分区。
  4. 安装时sa口令建议为空(避免安装日志记录明文口令),安装完成后再修改sa口令。
  5. 安装时不要选local system帐户启动SQLSERVER,据说是该帐户有功能上的限制。
          也不要用Administrator帐户,因为为安全考虑,该帐户经常使用并改变口令,容易引发SQLSERVER启动失败。
          建议:新建一帐户,加入Administrators Group,用该帐户启动SqlServer。当然如果该帐户的口令变了,必须在SQLSERVER中在修改该帐户的口令。
  6. 如果OS为win2003,必须打sp1,否则远程client无法访问数据库

二、安装完成后的配置

  1. 检查服务器启动配置
  2. 设成自动启动方式,包括自动启动SQLAGENT.
  3. 选择混合验证方式
  4. 修改SA的口令
  5. 打补丁SP3A
  6. 设置服务器异常终止时自动重启SQLAGENT.
  7. 下载最新的联机手册

三、SA的口令为什么不能为空,或过于简单。

      口令为空或太简单,很容易受到攻击。假设口令为空。远程用户远程连接上SQLSERVER后执行以下语句就可完全控制计算机:

      exec xp_cmdshell "net user peter   peter /add"

      exec xp_cmdshell "net localgroup administrators peter /add" 

 四、数据文件和日志文件有关知识

  1. 数据文件8k/page, 8 pages/盘区
  2. 8192byte, maxinum row size=8060 byte
  3. 一行记录不能跨两页存放,即一行记录不能跨8060byte。例外字段(text,image,ntext)
    故10万行 * 3K/行所需的存储空间=400M
  4. 日志文件也叫事务日志文件,用户不可以查看。
  5. 日志文件用于SQLSERVER记录每一笔数据操作(除SELECT操作)
  6. 日志记录每一笔操作的原数据、新数据、操作。
  7. checkpoint 每3秒触发一次,检查已有的日志文件,发现有成功的事务,则触发WRITE事件。

四、数据文件和日志文件有关知识

  1. 数据文件8k/page, 8 pages/盘区
  2. 8192byte, maxinum row size=8060 byte
  3. 一行记录不能跨两页存放,即一行记录不能跨8060byte。例外字段(text,image,ntext)
    故10万行 * 3K/行所需的存储空间=400M
  4. 日志文件也叫事务日志文件,用户不可以查看。
  5. 日志文件用于SQLSERVER记录每一笔数据操作(除SELECT操作)
  6. 日志记录每一笔操作的原数据、新数据、操作。
  7. checkpoint 每3秒触发一次,检查已有的日志文件,发现有成功的事务,则触发WRITE事件。

五、数据库的创建

  1. 数据库名
  2. 数据文件(数据和日志文件)
    逻辑名       物理名
    初始大小    最大大小
    增长方式    增长额度
  3. 排序方式(如果为BINARY,那么区别大小写)
  4. TIPS: 将数据库的故障恢复模型设为完全。
  5. 如果数据库文件要执行SHRINK操作,最后要预留10%,操作前要注意移动数据位置。

 

六、为什么要建立多个数据库文件

  • 性能考虑: 将经常访问的表分布到不同的物理硬盘。(raid阵列和只有一个硬盘不适用)
  • 空间考虑: 适合空间不足情况,增加另外的数据文件。
  • 备份考虑: 将历史时刻和当前数据分布到不同的数据文件(通过FileGroup实现)。

七、其他

  1. 查看 -> 任务版,可以查看数据库的使用情况  
  2. 命令行工具建议用OSQL。

原文转自:http://www.ltesting.net