最近在一个做企业的一个内部系统,数据库采用的是SQL2000,为了保证数据的安全性,需要每天下班之后做数据备份,并且通过邮件的方式通知管理员备份情况。备份数据库很简单,用SQL代理建立一个作业,每天定时备份数据库即可,通过SQL2000来发邮件的话,在网上
最近在一个做企业的一个内部系统,数据库采用的是SQL2000,,为了保证数据的安全性,需要每天下班之后做数据备份,并且通过邮件的方式通知管理员备份情况。备份数据库很简单,用SQL代理建立一个作业,每天定时备份数据库即可,通过SQL2000来发邮件的话,在网上找了些资料,发现有多种方式可以采用。
一、通过SQL Mail
SQL Mail 提供了一种从 Microsoft SQL Server 发送和阅读电子邮件的简单方法。原理是通过调用服务器上面的 MAPI 子系统来进行邮件发送,所以服务器上面需要安装诸如 Microsoft Outlook(不能是Outlook ExPRess) 之类的 MAPI 客户端,而且在发送邮件的时候,Outlook必须处于打开的状态。具体的设置方法可以通过网上查询。
二、使用CDONTS
通过调用本机的SMTP服务来发送邮件,所以服务器上必须安装IIS和SMTP。相应的存储过程为
CREATE PROCEDURE [dbo].[sp_send_cdontsmail]
@From varchar(100),
@To varchar(100),
@Subject varchar(100),
@Body varchar(4000),
@CC varchar(100) = null,
@BCC varchar(100) = null
AS
Declare @MailID int
Declare @hr int
EXEC @hr = sp_OACreate 'CDONTS.NewMail', @MailID OUT
EXEC @hr = sp_OASetProperty @MailID, 'From',@From
EXEC @hr = sp_OASetProperty @MailID, 'Body', @Body
EXEC @hr = sp_OASetProperty @MailID, 'BCC',@BCC
EXEC @hr = sp_OASetProperty @MailID, 'CC', @CC
EXEC @hr = sp_OASetProperty @MailID, 'Subject', @Subject
EXEC @hr = sp_OASetProperty @MailID, 'To', @To
EXEC @hr = sp_OAMethod @MailID, 'Send', NULL
EXEC @hr = sp_OADestroy @MailID
调用方法:
exec sp_send_cdontsmail 'someone@shouji138.com','someone2@hks8.com','测试邮件标题','这里是邮件内容,推荐一个好的小说站,好看书吧,'
三、使用CDOSYS
微软已经在 Windows 2000、Windows xp 以及 Windows 2003 中淘汰了 CDONTS,所以使用CDOSYS是目前最好的解决方案。使用CDOSYS可以使用远程的SMTP服务器来发送邮件,我们通过测试163网易的免费邮箱,可以正常发送邮件,相应的存储过程如下:
CREATE PROCEDURE sys_sendmail @To varchar(100) , @Bcc varchar(500), @Subject varchar(400)=" ",
@Body varchar(4000) =" "
AS
Declare @smtpserver varchar(50) --SMTP服务器地址
Declare @smtpusername varchar(50) --SMTP服务器用户名
Declare @smtpuserpassWord varchar(50) --SMTP服务器密码
set @smtpserver = 'smtp.163.com'
set @smtpusername = 'yourname@163.com' --这里设置成你的163邮箱用户名
set @smtpuserpassword = 'password' --这里设置成你的163邮箱密码
Declare @object int
Declare @hr int
EXEC @hr = sp_OACreate 'CDO.Message', @object OUT
EXEC @hr = sp_OASetProperty @object, 'Configuration.fields("").Value','2'
EXEC @hr = sp_OASetProperty @object, 'Configuration.fields("").Value', @smtpserver
--下面三条语句是smtp验证,如果服务器需要验证,则必须要这三句,你需要修改用户名和密码
EXEC @hr = sp_OASetProperty @object, 'Configuration.fields("").Value','1'
EXEC @hr = sp_OASetProperty @object, 'Configuration.fields("").Value',@smtpusername
EXEC @hr = sp_OASetProperty @object, 'Configuration.fields("").Value',@smtpuserpassword
EXEC @hr = sp_OAMethod @object, 'Configuration.Fields.Update', null
EXEC @hr = sp_OASetProperty @object, 'To', @To
EXEC @hr = sp_OASetProperty @object, 'Bcc', @Bcc
EXEC @hr = sp_OASetProperty @object, 'From', @smtpusername
EXEC @hr = sp_OASetProperty @object, 'Subject', @Subject
EXEC @hr = sp_OASetProperty @object, 'TextBody', @Body
EXEC @hr = sp_OAMethod @object, 'Send', NULL
--判断出错
IF @hr 0
BEGIN
EXEC sp_OAGetErrorInfo @object
print 'failed'
return @object
END
PRINT 'success'
EXEC @hr = sp_OADestroy @object
GO
调用存储过程发送邮件:exec sys_sendmail 'someone@shouji138.com','someone2@hks8.com','测试邮件标题','这里是邮件内容,手机主题,'
从以上三种方法的优缺点比较来看,我们当然采取第三种方法,不需要在服务器上装别的组件和程序。我们可以在SQL代理中建立一个作业,调度设为每天下午6点,执行的数据库备份语句和发送邮件的SQL如下:
declare @dbname varchar(50)
set @dbname = 'dbtest' --设置数据库名
declare @filename nvarchar(100)
declare @time datetime
set @time = getdate()
set @filename= 'D:数据库自动备份'+@dbname+substring(replace(replace(replace(CONVERT(varchar, @time, 120 ),'-',''),' ',''),':',''),1,14 )+'.bak'
--print @filename
BACKUP DATABASE dbtest TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKip , STATS = 10, NOFORMAT
--下面获取备份之后文件的大小
declare @size int
declare @sizeM decimal (5, 2)
select top 1 @size=backup_size
from msdb.dbo.backupset
where database_name = @dbname
order by backup_start_date desc
set @sizeM = CAST(@size as float)/1024/1024
--print @sizeM
--邮件内容
declare @content varchar(2000)
set @content='数据库自动备份成功。
数据库名:'+@dbname+'
备份文件名:'+@filename+'
备份文件大小:'+convert(varchar,@sizeM)+'M
备份时间:'+CONVERT(varchar, @time, 120 )+'
这是一封系统自动发出的邮件,用来每天报告数据库自动备份情况,请不要直接回复。'
--print @content
--发送邮件
EXECUTE dbtest.dbo.sys_sendmail 'dba@hks8.com','dba@shouji138.com',
'数据库自动备份日报',@content
go

Windows系统上的任务栏是全球所有Windows用户最常用的功能。您可以轻松地将您最喜欢和最常用的应用程序固定在任务栏中,自定义其大小和颜色。在本文中,我们将讨论如何备份任务栏上的固定项目以及如何根据需要恢复它们。如何在Windows11中备份和恢复任务栏上的固定项目有两种方法可以备份和恢复固定的项目。有一种手动方法,您必须在安全文件夹中创建固定项目的备份及其关联的注册表文件。除此之外,还有另一种自动方法可用于自动化备份固定项目的整个过程。手动备份这个过程有两个不同的部分。第1步-

如果您使用Linux操作系统,并希望系统在启动时自动加载驱动器,可以通过将设备的唯一标识符(UID)和挂载点路径添加到fstab配置文件中来实现。fstab是一个位于/etc目录中的文件系统表文件,它包含了系统在启动时需要挂载的文件系统的信息。通过编辑fstab文件,您可以确保在每次系统启动时都能正确加载所需的驱动器,从而保证系统的稳定运行。自动安装驱动器可方便地应用于多种情境。比如,我计划将系统备份到外部存储设备。为了实现自动化,需确保设备与系统保持连接,甚至在启动时。同样,很多应用程序会直接

随着互联网的发展,图片已经成为网页中不可或缺的一部分。但是随着图片数量的增多,图片的加载速度成为了一个很重要的问题。为了解决这个问题,许多网站都采用了缩略图的方式展示图片,但是为了生成缩略图,我们需要使用专业的图片处理工具,对于一些非专业人士来说,这是一个很麻烦的事情。那么,使用JavaScript实现自动缩略图生成就成为了一个不错的选择。如何使用JavaS

PHP和PHPMAILER:如何实现邮件发送的自动过滤功能?在现代社会中,电子邮件已成为人们交流的重要方式之一。然而,随着电子邮件的流行和广泛使用,垃圾邮件的数量也呈现出爆炸式增长的趋势。垃圾邮件不仅会浪费用户的时间和网络资源,还可能带来病毒和钓鱼行为。因此,在开发邮件发送功能时,加入自动过滤垃圾邮件的功能变得至关重要。本文将介绍如何使用PHP和PHPMai

微软6月24号正式公布了win11系统,可以看到用户界面、开始菜单等和Windows10X中发现的非常相似。有的朋友在使用预览版的时候发现用的不习惯,想要改win10系统开使用,那么我们要如何操作呢,下面我们就来看看win11改win10系统教程,一起来学习一下吧。1、第一步是从Windows11打开新设置。在这里,您需要转到图像中显示的系统设置。2、在系统设置下,选择“恢复”选项。在这里,您将能够看到“以前版本的窗口”选项。您还可以在它旁边看到一个“返回”按钮,单击此按钮。3、您可以指定要返回

前言vim是个强大的文本编辑的工具,在Linux端得到极大的使用热度。最近在另外一台服务器上使用vim时,遇到了一个奇怪的问题:当我将本地编写好的脚本复制并粘贴到服务器中的空白文件时,出现了自动缩进的情况。用个简单的例子来说,就是我在本地写的脚本如下:aaabbbcccddd当我将上述内容复制后,粘贴到服务器中的空白文件后得到的却是:aabbbcccddd很明显,这是vim给我们自动进行了格式缩进。但是,这个自动有点不智能。这里记录下解决方案。解决方案:设置.vimrc配置文件我们在家目录下,新

随着互联网技术和大数据时代的到来,越来越多的企业开始依赖于数据来决策和推动业务发展。而数据备份和恢复作为数据管理的重要环节,其重要性不言而喻。在Linux系统中,数据备份和恢复也是必不可少的。下面将详细介绍Linux系统中的数据备份和恢复方法。一、备份tar命令tar命令是Linux系统中最基本的备份命令,可以将文件或目录打包成一个文件。它的基本语法如下:t

MySQL和Oracle:对于备份和恢复的速度和可靠性比较导言:MySQL和Oracle是两个常见的关系型数据库管理系统(RDBMS),它们在数据备份和恢复方面有着不同的机制和性能表现。本文将重点比较MySQL和Oracle在备份和恢复方面的速度和可靠性,并附上一些代码示例,以便更好地理解它们之间的差异和优劣势。备份性能比较:在备份方面,MySQL和Orac


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

드림위버 CS6
시각적 웹 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.
