SQLServer日志传送的三个角色与四个步骤
日志传送简单地说,就是通过上面的三个服务器角色与四个步骤来完成的。
第一步:备份日志。
主服务器会根据数据库管理员设置的备份计划,对事务日志按照计划进行备份。这是日志传送中的一个重要的内容。因为若主服务器的日志备份失败的话,则后续的工作都将无法进行。故我们往往需要对这个日志的备份进行监视,看看其是否按照数据库管理员所设想的方式在处理。为了达到这个目的,我们可以利用“监视服务器”来帮助我们监视这个作业。
第二步:日志文件传送。
当主服务器把日志备份好之后,主服务器就会根据数据库管理员的设置,把相关的日志文件自动传送给辅助服务器。在日志文件传送的过程中,主要需要考虑两个问题。
一是多久传送一次。一般情况下,对于数据库高可用性要求比较高的话,则可以在主服务器每次备份完事务日志后,就发送一次备份日志文件。不过,这要牺牲一定的网络带宽。这主要是根据企业的实际情况来处理。像笔者的企业,由于是SAAS模式的数据库租赁公司,所以,对于数据库可用性的要求非常的高。主服务器每次备份完成后,都会及时向辅助服务器传送备份日志。以达到辅助服务器与主服务器之间数据的同步。
二是做好日志文件传送的监督工作。准确、准时的把主服务器上的备份日志文件传送到辅助服务器上,这是辅助服务器正常运行的前提。为了让日志传送功能能够正常的运转,往往需要对日志文件的传送工作进行监督。需要通过监视服务器,来监视主服务器有没有把备份日志准时的发送出去;而辅助服务器有没有及时的接收备份日志。若出现异常的话,监视服务器需要利用消息或者邮件的方式通知数据库管理员。
第三步:辅助服务器还原事务日志。
当辅助服务器收到主服务器发送过来的备份日志后,就需要根据这个备份日志还原数据库。如此的话,当主服务器出现故障后,辅助服务器能够马上代替主服务器进行工作。所以,即使主服务器出现问题,用户也很难察觉到。
由于以上这三个作业都是通过计划来调度的,所以,这个还原作业也可以通过操作系统的任务计划来进行管理。对于辅助服务器的还原频率来说,需要数据库管理员进行合理的设置。考试大提示在管理过程中,主要的问题就是数据同步与数据库设计管理方面的一个均衡问题。
这是因为日志传送是按照时间表进行的,故在主服务器与辅助服务器之间有个时间差。主服务器上的数据更改反映到辅助服务器上会有时间延迟。这个延迟有好处也有坏处。好处就是这些延迟可以用作还原用户错误的一种方法,因为可以延迟日志文件在辅助服务器上的应用,从而数据库管理员可以选择不采用错误的配置。但是,坏处也是很明显的。因为要通过日志服务器帮助数据库的高可用性的一个前提,就是要提高辅助服务器与主服务器之间的数据同步性能。而数据延迟会降低这个同步性。
所以,数据库管理员需要综合各种情形,来设置这个还原的频率。笔者是把这个数据同步看得更重。故数据库服务器与辅助服务器备份与还原的频率设置为三分钟。
第四步:警报。
警报虽然在日志传送中不是必须的,但其往往是日志传送正常运行的一个保障。他就好像是公路上的探头,当以上三个作业出现什么问题的时候,让数据库管理员可以马上知道,从而及时的采取措施,挽回损失。
具体的来说,需要对如下的作业进行监视。当出现不正常的情况时,及时通过信息或者邮件的形式向数据库管理员汇报。
1、主服务器日志备份出现问题。如当主服务器延迟备份时,监视服务器就需要向数据库管理员报告相关的情况。
2、备份日志传送出现异常情况。如辅助服务器没有及时收到备份的日志文件,监视服务器就会告知数据库管理员。此时,数据库管理员就需要去检查,看看是网络的问题,还是主服务器的问题。
3、还原情况的监视。辅助服务器有没有按时对数据库进行还原;在还原的过程中有没有出现意外情况,都要及时的告知数据库管理员。如最常见的警报就是,当服务器没有按规定进行还原的时候,要触发警报作业。
A首先数据库端设置:
1在SQL
Server
2000中创建数据库
eg名称:DBdw
2在SQL
Server
2000中创建用户
设置用户名dw,
选择SQL
Server身份验证,然后输入密码,在下面的默认设置中设置用户默认数据库为DBdw
选择“服务器角色”选项,将其中的所需要的服务器角色选中,如果为了方便可以全选。选择“服务器访问”选项,选择用户可以访问的数据库。然后在下面的
数据库角色
中选择用户在访问该数据库时拥有的权限,建议将所有的权限都选。
B其次建立数据库与ODBC的连接
步骤:
1打开“控制面板”中的“ODBC”并选择“系统DNS”面板。
2点击添加按钮,并选择“SQL
Server”点击“完成”。
3配置DNS的名称和服务器,名称和说明可以自己定义(最好不要带有数字),服务器名称必须是数据所在的计算机中SQL
Server2000的服务器名字(一般是计算机的名字),然后单击“确定”。
4选择“使用用户输入登录ID和密码的SQL
Server验证”,在“用户名”和“密码”
文本框
中输入第一步中在SQL
Server建立的用户名和密码。点击确定直到出现
测试数据
界面。
5点击“测试数据源”出现测试界面,单击“确定”。
C最后通过ODBC使
Dreamweaver
与SQL
Server相连
1建立站点
eg名称
test
步骤:
1)打开Dreamweaver
中站点面板并点击编辑站点。
2)点击“NEW”新建站点。
3)选择“本地信息”选项,设置站点的名字以及文件存放路径。
4)选择“测试服务”选项设置解释ASP的路径(与IIS中设置的路径一致)。
5)点击确定完成创建工作。
2ODBC与Dreamweaver的连接
1)在Dreamweaver中“application”面板里选择“Database”选项,并单击上面的“+”号,选择
下拉菜单
中的第二项(DNS)。
2)设置数据库在Dreamweaver中的名字,“
connection
name”是用于设置在Dreamweaver中用什么名字代表这个连接,名字中只要不带有数字就可以。“data
source
name”选择在第二步中数据库和ODBC建立连接时的名字,用户名和密码是在SQL
Server中建立的用户名和密码,然后点击“OK”就可以了。
到这里为止就已经把数据库与Dreamweaver相连了。
希望对你有帮助
看看下面的对你有帮助么
在我们刚刚安装sql2005时经常遇到无法连接的问题,一般可归结为以下几类:
一"SQLServer不存在或访问被拒绝"
这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多
一般说来,有以下几种可能性:
1SQLServer名称或IP地址拼写有误
2服务器端网络配置有误
3客户端网络配置有误
要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因
首先,检查网络物理连接
ping
如果ping不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等
还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如ISAServer防火墙软件可能会屏蔽对ping,telnet等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口
如果ping成功而,ping失败,则说明名字解析有问题,这时候要检查DNS服务是否正常
有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:
1使用记事本打开HOSTS文件(一般情况下位于C:)
添加一条IP地址与服务器名称的对应记录,如:
1721681024myserver
2或在SQLServer的客户端网络实用工具里面进行配置,后面会有详细说明
其次,使用telnet命令检查SQLServer服务器工作状态
telnet1433
如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明SQLServer服务器工作正常,并且正在监听1433端口的TCP/IP连接,如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动SQLServer服务,也可能服务器端没启用TCP/IP协议,或者服务器端没有在SQLServer默认的端口1433上监听
接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道是否启用了TCP/IP协议等等,可以利用SQLServer自带的服务器网络使用工具来进行检查
点击:程序MicrosoftSQLServer服务器网络使用工具
打开该工具后,在"常规"中可以看到服务器启用了哪些协议
一般而言,我们启用命名管道以及TCP/IP协议
点中TCP/IP协议,选择"属性",我们可以来检查SQKServer服务默认端口的设置
一般而言,我们使用SQLServer默认的1433端口如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接
接下来我们要到客户端检查客户端的网络配置
我们同样可以利用SQLServer自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具
点击:程序MicrosoftSQLServer客户端网络使用工具
打开该工具后,在"常规"项中,可以看到客户端启用了哪些协议
一般而言,我们同样需要启用命名管道以及TCP/IP协议
点击TCP/IP协议,选择"属性",可以检查客户端默认连接端口的设置,该端口必须与服务器一致
单击"别名"选项卡,还可以为服务器配置别名服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同别名的设置与使用HOSTS文件有相似之处
通过以上几个方面的检查,基本上可以排除第一种错误
二"无法连接到服务器,用户xxx登陆失败"
该错误产生的原因是由于SQLServer使用了"仅Windows"的身份验证方式,因此用户无法使用SQLServer的登录帐户(如sa)进行连接解决方法如下所示:
1在服务器端使用企业管理器,并且选择"使用Windows身份验证"连接上SQLServer
2展开"SQLServer组",鼠标右键点击SQLServer服务器的名称,选择"属性",再选择"安全性"选项卡
3在"身份验证"下,选择"SQLServer和Windows"
4重新启动SQLServer服务
在以上解决方法中,如果在第1步中使用"使用Windows身份验证"连接SQLServer失败,那就通过修改注册表来解决此问题:
1点击"开始""运行",输入regedit,回车进入注册表编辑器
2依次展开注册表项,浏览到以下注册表键:
[HKEY_LOCAL_MicrosoftMSSQLServerMSSQLServer]
3在屏幕右方找到名称"LoginMode",双击编辑双字节值
4将原值从1改为2,点击"确定"
5关闭注册表编辑器
6重新启动SQLServer服务
此时,用户可以成功地使用sa在企业管理器中新建SQLServer注册,但是仍然无法使用Windows身份验证模式来连接SQLServer
这是因为在SQLServer中有两个缺省的登录帐户:
被删除
要恢复这两个帐户,可以使用以下的方法:
1打开企业管理器,展开服务器组,然后展开服务器
2展开"安全性",右击"登录",然后单击"新建登录"
3在"名称"框中,输入
4在"服务器角色"选项卡中,选择"System"
5点击"确定"退出
6使用同样方法添加登录
说明:
以下注册表键:
HKEY_LOCAL_MSSQLServer
的值决定了SQLServer将采取何种身份验证模式
1表示使用"Windows身份验证"模式
2表示使用混合模式(Windows身份验证和SQLServer身份验证)
三提示连接超时
如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错
这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误有些情况下,由于局域网的网络问题,也会导致这样的错误
要解决这样的错误,可以修改客户端的连接超时设置
默认情况下,通过企业管理器注册另外一台SQLServer的超时设置是4秒,而查询分析器是15秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)
具体步骤为:
企业管理器中的设置:
1在企业管理器中,选择菜单上的"工具",再选择"选项"
2在弹出的"SQLServer企业管理器属性"窗口中,点击"高级"选项卡
3在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如20
查询分析器中的设置:
工具选项连接将登录超时设置为一个较大的数字
连接超时改为0
1、先保证ping通
2、在dos下写入telnetip1433不会报错
3、用ip连如企业管理器:
企业管理器
4、如果还不行:
sqlserver服务器
5、如果还不行:
sqlserver客户端
(一)SQLServer支持Windows身份验证模式和混合模式两种身份验证模式。这两种身份验证模式的区别有:
(1) Windows 身份验证模式
只进行 Windows 身份验证。用户不能指定 SQL Server 2000 登录 ID。这是 SQL Server 2000 的默认身份验证模式。不能为在 Windows 98 上运行的 SQL Server 实例指定 Windows 身份验证模式,因为此操作系统不支持 Windows 身份验证。
(2) 混合模式
如果用户在登录时提供了 SQL Server 2000 登录 ID,则系统将使用 SQL Server 身份验证对其进行验证。如果没有提供 SQL Server 2000 登录 ID 或请求 Windows 身份验证,则使用 Windows 身份验证对其进行身份验证。
(二)角色让你将用户集中到一起,以利于更简单的管理。就像用户一样,角色也是数据库的对象。例如,你可以在自己的采购数据库里定义一个“销售”角色,并让所有的产品所有销售人员都成为这个角色的成员。如果你随后赋予这个“销售”角色许可,那么这些许可会自动地应用于该角色的所有成员上。此外,一个用户可以是多个角色的成员。
有三种类型的角色:
公共——这个角色会为所有的用户设置缺省的基本许可,所有的用户都会被分配公共角色。
服务器——服务器角色适用于整个服务器。
数据库——这些角色适用于专门的数据库。
服务器和数据库角色都有预先定义的类别:
服务器
SysAdmin
所指派的成员能够在服务器进行任何操作。
ServerAdmin
所指派的成员能够设置服务器配置选项。
SetupAdmin
所指派的成员能够管理被连接的服务器和SQL服务器的启动选项以及任务。
SecurityAdmin
所指派的成员能够管理服务器的安全。
ProcessAdmin
所指派的成员可以取消服务器上有所的进程。
dbCreator
所指派的成员能够创建、更改、停止和恢复数据库。
DiskAdmin
所指派的成员能够管理服务器磁盘文件。
BulkAdmin
所指派的成员能够运行大多数插入命令。
数据库
db_owner
所指派的成员具有对数据库的完全访问权。
db_accessadmin
所指派的成员能够管理Windows组以及SQL服务器的登录。
db_datareader
所指派的成员能够读取数据库里的所有数据。
db_datawriter
所指派的成员能够添加、删除,或者修改数据库里的数据。
db_ddladmin
所指派的成员能够运行动态链接库(DLL)陈述式。
db_securityadmin
所指派的成员能够修改角色成员的所属,并能够管理许可。
db_denydatareader
所指派的成员不能够查看数据库里的数据。
db_bckupoperator
所指派的成员可以备份数据库。
db_denydatawriter
所指派的成员不能更改或者删除数据。
0条评论