Rootop 服务器运维与web架构

2012-02-02
发表者 Venus
暂无评论

SQL 收缩数据库事务日志

       “收缩数据库”任务通过删除空的数据页和日志页来减少数据库和日志文件占用的磁盘空间。

       可以用 管理-维护计划-新建维护计划,添加 “收缩数据库”任务

 

更多内容和参考SQL帮助文件:

使用“‘收缩数据库’任务”对话框可以创建一个任务,尝试减小所选数据库的大小。使用下面的选项可以确定数据库收缩后在数据库中保留的未使用空间量(该百分比越大,数据库可收缩的量越小)。该数值取决于数据库中实际数据的百分比。例如,某个 100 MB 数据库包含 60 MB 的数据和 40 MB 的可用空间,当可用空间百分比为 50% 时,则将保留 60 MB 的数据和 30 MB 的可用空间(因为 60 MB 的 50% 是 30 MB)。只会去除数据库中的多余空间。有效值为 0 到 100。

此任务执行 DBCC SHRINKDATABASE 语句。

另一种方法,通过删除ldf文件实现,不过不太推荐此方法。

首先 分离 目的数据库,比如DWDS_DB,然后找到数据库存放位置,(切忌先将ldf文件备份,以防万一!

删除ldf文件,再 附加 数据库,选DWDS_DB.mdf文件。

会提示ldf日志文件找不到,直接点击下面的 删除 即可。然后确定,也可以附加回去,ldf会被重建。

2012-02-01
发表者 Venus
暂无评论

SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 ‘NQ\Administrator’ 的信息,错误代码 0x534。 [SQLSTATE 42000]

在执行“维护计划”时候报错:

消息
[298] SQLServer 错误:  15404,无法获取有关 Windows NT 组/用户 ‘NQ\Administrator’ 的信息,错误代码 0x534。 [SQLSTATE 42000]

(ConnIsLoginSysAdmin)

      查看数据库 安全性-登录名,有’NQ\Administrator’这个账户,回头一想,之前用组策略将计算机管理员administrator重命名为venus,相当于系统中不存在administrator这个用户,重新用venus与administrator的SID相关联,但是数据库中没有更新administrator为venus,在登陆数据库引擎采用windows身份验证时没问题。那么只要修改下登录名下的此账户就可以。直接 ‘NQ\Administrator’ 右键 重命名 改为’NQ\venus’ ,重启SQL服务。

2012-01-31
发表者 Venus
暂无评论

利用winrar实现网站数据的自动备份

先上代码:

@echo off
%HOMEDRIVE%
cd \
set winrardir=”c:\Program Files (x86)\WinRAR”
%winrardir%\winrar A  G:\   -ag[YYMMDDHHMMSS] -r @C:\list\list.1st -ibck -ep2
::%winrardir%\winrar u  -y G:\   -ag[YYMMDDHHMMSS] -r @C:\list\list.1st -ibck -ep2
::u 为更新变化的数据,相当于增量备份,把从上一次备份以来变化的数据压缩到文件夹中。-y 表示所有提示均为“是”
exit

参数解释:

注意是G:\是备份的路径。list.1st 为数字1 ,不是字母l

::%winrardir%\winrar A  G:\ -ag[YYMMDDHHMMSS] G:\1.txt -r  //压缩指定的单个文件

::a 添加文件到压缩文件
::-ag[格式]使用当前日期生成压缩文件名
::-r 递归子目录
::@指定压缩列表
::-ibck 后台运行
::-ep2 展开为完整路径
::C:\list\list.1st 列表,一行代表一个需要被压缩的文件或文件夹

set winrardir=”c:\Program Files (x86)\WinRAR”        //这是我winrar的安装路径,根据实际情况填写。

(::双冒号为注释,不执行的部分。)

       以上代码实现的目的是,将c盘下list文件夹中的list.1st文件指出的文件或文件夹包括子文件夹,以当前的年月日时分秒进行命名,备份到G盘,这样就实现了数据的备份。然后可以添加任务计划,自行设置执行时间,实现数据的自动备份。测试成功。

如果想实现数据的自动更新,压缩自上次以来变更的数据,就用参数 u (红色代码)

2012-01-30
发表者 Venus
暂无评论

Linux下ntp时间同步(中国国家授权标准时间IP地址:210.72.145.44 )

       之前是两台机器内部做时间同步,现在跟实际的国家标准时间有点误差,最后又与国家授权标准时间ip做同步,在此记下公网有效同步ip,也作为ntp同步方法略做参考:

执行命令:

[root@s1 ~]# crontab -e         //添加任务计划 

30 1 * * * /usr/sbin/ntpdate 210.72.145.44 && hwclock -w                  //凌晨1点30分同步,并写入硬件
30 12 * * * /usr/sbin/ntpdate 210.72.145.44 && hwclock -w

保存退出,重启服务生效。

[root@s1 ~]# service crond restart

2012-01-10
发表者 Venus
暂无评论

删除SQL2008用户登录历史记录

      sql2008建了多个登陆名测试用,现在把测试登陆名删除后,SQL Server Management Studio登陆窗口还保留着用户记录,想清空这些多余的登陆名,方法如下:

关闭SSMS,删除:
%AppData%\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin (2008)
%AppData%\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat             (2005)

%AppData%\ 为系统变量,直接在 资源管理器 中粘贴就可以打开,然后把对应的文件删除,或者剪切到别处重新启动ssms登录即可。
%AppData% 是用户变量在命令行中运行 ECHO %APPDATA%,就可以看到对应的目录。

C:\Users\Administrator>ECHO %APPDATA%
C:\Users\Administrator\AppData\Roaming