SQL 2008 系统数据库 master中的部分表被我手动删除了 求恢复master
遇到损坏或者错误的master数据库是最难解决情况之一。Master数据库包含了SQL Server需要的关键信息。如果master数据库出错,那么SQL Server就不能启动。要在这种情况下还原master数据库,可以按照下面这些步骤来从灾难中恢复过来:
1 使用\PRogram Files\Microsoft SQL Server\80\Tools\Binn目录下的rebuidmexe文件重建master数据库。重建master数据库可以使你的数据库文件完整无缺。为以防万一,经常把数据和日志文件备份到一个单独的目录是个不错的主意。
2 使用-m参数启动SQL Server,这样可以以单用户模式重新启动SQL Server。
3 从最近一次已知最好的备份来还原master数据库。
4 核实master数据库是不是已经成功还原:确认所有数据库都已恢复正常运行。从最近一次已知最好的备份来还原msdb数据库。
5 以普通模式停止和启动SQL Server。
6 向生产用户开放数据库。
如果这样做没有效,那么重建master数据库然后附加这个数据库。这也是DBA的任务之一,当然你并不希望经常这样做。如果master数据库出现问题,那么服务器上所有的数据库都会出现问题。
总的来说,恢复时要完成的第一个步骤就是安装一个新的master数据库,使服务器至少能够启动。在此基础上,就可以还原真正的master数据库了。双击了rebuildmexe之后,将启动rebuild master实用程序,它需要三个参数:
① 要恢复的服务器名称。
② Master数据库在原来的安装程序中的位置,如果SQL Server的版本为SP2,这个位置应当是安装CD的x86\data目录(在更早的版本中,由于存在程序错误,有可能需要将这个data目录拷贝到硬盘驱动器或者网络驱动器上)。
③ 服务器的排序规则。
这个重建过程将会重新创建全部四个系统数据库以及Northwind和Pubs,接着对服务器进行配置。整个重建过程大约需要数分钟,如果以前使用service pack对服务器进行了升级,将有可能花费更长时间。
恢复过程的第二个步骤是使用服务器管理或者企业管理器来启动服务器。
依赖于你的安全性配置,企业管理器很有可能没有连接到服务器的权限。重建master数据库将会丢掉除了sa以外的所有用户登录,并把sa的空口令重置为空。如果要调整企业管理器的连接配置,以便作为sa以空口令连接到服务器,可以编辑SQL Server的注册属性。不要担心sa的空口令,因为我们很快就会恢复真正的master数据库。
一旦服务器再次运行,你就会发现所有的用户数据库都不见了,因为重建的master数据库没有包含有关这些用户数据库的信息。
恢复过程的第三个步骤就是将服务器置于单用户模式,以便还原master数据库。在企业管理器中,要完成以下步骤:
① 选择服务器。
② 使用右键单击它,并从弹出的快捷方式菜单中选择“属性”菜单项,打开“服务器属性”对话框。
③ 单击“启动参数”按钮。
④ 在“参数”文本框中输入-m,然后按下“添加”按钮。
⑤ 按下“确定”按钮关闭“启动参数”对话框,然后关闭“服务器属性”对话框。
⑥ 关闭企业管理器。
警告:在SQL Server实例处于单用户模式时,不要使用企业管理器。这样做有可能会锁定该实例,使它进入不能接受其他连接的状态。
⑦ 使用SQL Server服务器管理器停止并重新启动SQL Server实例。
恢复损坏的master数据库的第四个步骤才是进行真正的还原。因为SQL Server现在处于单用户模式,所以必须使用查询分析器来完成这一步骤。如果试图在企业管理器中还原master数据库,将会产生严重的问题。在查询分析器中进行还原时,需要执行下面的命令:
RESTORE DATABASE master
FROM
DISK=’systembackup’
WITH FILE=1
执行结果如下:
The master database has been successfully restored
Shutting down SQL Server
SQL Server is terminating this process
关闭查询分析器,并使用SQL Server的服务管理器重新启动SQL Server实例。
还原master数据库的最后一步是把在第三个步骤加入的-m启动参数去掉,将SQL Server实例重新置于多用户状态。要修改这个启动参数,可以使用企业管理器的“服务器属性”对话框。
关闭企业管理器,使用SQL Server的服务管理器停止并重新启动SQL Server实例。
首选需要正确开启windows2008系统的远程桌面功能
1正常的开启操作:
在桌面上右点"计算机"->"属性"->在打开的"系统"窗口里点击"远程设置",再切换到"远程"选项板中,将"远程协助"打上对钩,再将"远程桌面"里根据你的需要选择一项目,比方我选择的是"允许运行任意版本远程桌面的计算机连接"。确定就行了。
2特殊的情况:有的网友会发现在给"远程协助"打钩时,是灰色的没法钩上,也就没办法开启。这是因为windows2008的安全性已经被微软设计的很高,默认刚安装上2008系统时并没有安装上这项服务,需要你用执行相应的安装操作。具体如下:打开"服务器管理器"右击"功能"选择"添加功能",将右边窗口中"远程服务器管理工具"下边的"远程协助"打上对钩"再点击"下一步"再点击"安装"需要等待几分钟安装完后再去执行上边第1步操作就成功开启了远程桌面功能。
但现在我们遇到了一个问题,就是Windows server
2008系统默认只支持一个administrator用户登陆,一个登录后另一个就被踢掉了,有没有办法像Windows Server
2003那样允许多用户用同时同一个用户名登录
解决方法: 打开控制面板-管理工具,终端服务-终端服务配置
1、连接:RDP-tcp
点右键,属性。网络适配器-最大连接数2。默认情况下如果你不添加终端服务功能,最大只能调整为同时2个连接。
2、终端服务器授权模式:点右键,属性。常规,限制每个用户只能使用一个会话,去掉勾,确定。到这里就可以多登录了。如果没有设置生效,重启一下。
3、为了防止恶搞,阻止远程用户终止控制台管理员。我们可以运行gpeditmsc,打开组策略
,计算机配置-管理模板-Windows组件-终端服务-终端服务器-连接。
配置:拒绝将已经登录到控制台会话的管理员注销,设置启用,重启系统或是刷新组策略后即可生效。
英文版操作系统对应的操作流程是:
在使用Windows 2008远程登录功能时,如果需要进行多用户登录,可以采用以下配置方法:
首先要启用远程桌面这一功能:右击“我的电脑”→ 属性 → 远程配置 → 远程桌面,就可以配置相应的远程桌面功能了。下面是配置多用户登陆的方法:
打开 控制面板 → 管理工具 → 终端服务(Terminal Services) → 终端服务配置(Terminal Services
Configuration)
1、(修改可以同时登陆的人数,包括自己,默认为2个,如果只需要另外一个人远程登陆你的电脑的话,比如mm或gg,那么这一步就不用做了,直接跳到第二步)连接(Connections):RDP-tcp
点右键 → 属性 → 网络适配器(Network Adapter) → 最大连接数 → 自己修改数目。
2、配置(Edit settings):终端服务器授权模式(Terminal Services licensing mode) → 点右键 → 属性 →
常规 → 限制每个用户只能使用一个会话(Restrict each user to a single session),去掉前面的勾 →
确定。到这里就可以多用户登录了。如果设置没有生效,重启一下(试过了,生效d)。
3、为防止恶搞,阻止远程用户终止控制台管理员。开始 → 运行 → gpeditmsc → 计算机配置 → 管理模板 →
Windows组件(Windows Components) → 终端服务(Terminal Services) → 终端服务器(Terminal Server)
→ 连接(Connections) → 拒绝将已经登录到控制台会话的管理员注销(Deny logoff of an administrator logged
in to the console session),右击 → 属性 → 启用。(重启生效)
windows 2008 r2
rds设置
远程桌面服务或说RDS是一项由来已久的Windows终端服务,只不过它经历了许多更新和发展。那些曾将终端服务当作Citrix基础的企业,现在大都不再需要Citrix了,因为以前主要来自Citrix插件的功能已经被Windows
2008 R2
RDS替代。微软已经对其功能和兼容性进行升级,以前需要Citrix进行补充的功能已经包含在其中。通过x64位主服务器,我们可以将32Gb或64Gb以及8核或16核放入单一系统中,让150-250名用户同时处在同一个RDS服务器上。
RDS的主要特性:
1可以同时让多个用户处于同一RDS主服务器,从而使大量RDS服务器都处于加载平衡状态。
2用RDS Session Broker服务器平衡RDS服务器的加载,并且当用户断开链接时将其重新连接到服务器上。
3将RDS网关服务器接入网络,以便远程用户通过标准SSL 443端口访问RDS主机(而不是通过经常被防火墙拦截的3389端口)。
4将RDS Web Access服务器接入网络,因此远程用户只能连接一个网页并通过一个页面来访问其RDS应用,而不需要获取全部桌面会话。
5将RDS
RemoteApp服务器接入网络,这样用户桌面会产生一个相应图标,双击该图标就可打开一个应用,而不需要了解该应用是否以RDS托管应用的方式运行。
我们还可以将这些服务器角色结合起来尽可能减少所需的系统数量,或者我们也可以对该环境进行扩展,大大增加其资源量和用户量。
至于RDS的基本安装,笔者有以下经验与大家分享。部署RD Session Host 角色服务时,要在RD Session
Host服务器可用来托管应用前,按先后顺序完成以下三件事情:
1必须安装RD Session Host角色服务(这是基本的终端服务器系统任务。)
2要通过RD Session Host服务器托管的应用必须安装到RD Session Host系统上。
3必须授予用户所需的特权,使其能连接RD Session Host服务器以及配置RD许可证。
安装RD Session Host角色服务
欲安装RD Session Host角色服务,可按如下步骤进行:
1通过本地管理员享有的特权登录所需服务器。
2点击“开始”菜单,然后点“运行”。
3在运行对话框中输入ServerManagermsc,然后确认。
4在Roles Summary部分,点击添加Roles任务。
5添加Roles向导加载之后,选下一步。在选择服务器角色页面上,选择“远程桌面服务”角色,然后点下一步。
6在远程桌面服务页面,选下一步。
7在选择角色服务页面,仅选择“远程桌面会话主机”角色服务。这是此时唯一安装的角色服务。点击下一步。
8在Uninstall and Reinstall Applications for Compatibility page,选择下一步到Specify
Authentication Method for Remote Desktop Session
Host页面,为RD会话主机服务器选择一种验证方式,然后点下一步。
9在Specify Licensing Mode页面,选择Configure Later licensing,然后点下一步。
10在Select User Groups Allowed Access to This RD Session Host Server
页面,保留默认管理组,点下一步。
11在Configure Client Experience
页面,选择所需的客户经验级别,当远程客户连接到RD会话主机服务器时会使用到这一项,点下一步。
12在Confirm Installation Selections 页面,检查所有选定的选项,然后点“安装”。
13当系统提示重启服务器,点确认。服务器重启后,重新以管理员身份登录服务器,登录后,系统会显示安装完成页面。检查该页面的所有内容,确定终端服务器安装成功。
安装应用
应该在RD会话主机角色服务安装完成后,才将应用程序安装到RD会话主机服务器上。反之,所安装的应用可能会无法被所有用户正常使用。此外,如果是以特殊安装模式进行安装,那么应用只能安装到RD会话主机服务器上。可以用以下任意一种方法将RD会话主机服务器以这种安装模式安装。
1打开控制面板,在下属程序中找到远程桌面会话主机,使用该主机选项上的“安装应用”。
2在安装应用前,使用此命令:change user /Install 。
如果选择第二种方法,那么需要用change user
/Execute命令,将该服务器改回Execute模式。用户访问新安装的应用前,服务器应处于Execute模式。可用change user
/Query命令查看当前模式。
注意,当安装那些使用微软msi数据包的应用时,RD会话主机服务器通常不需要转换到Install模式。只要安装使用msi数据包或相关可执行安装文件即可。
授权用户进行访问
按以下步骤操作,可授权用户访问RD会话主机服务器:
1以本地管理员身份登录所需服务器。
2点击“开始”菜单,然后点“运行”。
3在运行对话框中输入ServerManagermsc,然后确认。
4在弹出的Server Manager 控制台选择Configure Remote Desktop任务。
5在系统属性对话框中的远程选项卡,远程桌面部分,点Select Users按钮。下一步,选择“添加”,在Select Users or
Groups对话框中,选择你允许的用户进行授权,然后确认结束。
6确认结束后,在系统属性对话框中,再次确认结束。
注意,上述步骤完成后,本地远程桌面用户组会被修改。在Farm中管理大量RD会话主机服务器时,推荐大家用组策略对象中的有限组策略有节制地访问这些服务器。
0:关机
1:单用户模式
2:无网络支持的多用户模式
3:有网络支持的多用户模式
4:保留,未使用
5:有网络支持有X-Window支持的多用户模式
6:重新引导系统,即重启
Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 Linux 系统启动到多用户模式,并提供正常的网络服务。如果系统管理员需要进行系统维护或系统出现启动异常时,就需要进入单用户模式或修复模式对系统进行管理了。使用单用户模式有一个前提,就是您的系统引导器(grub)能正常工作,否则要进行系统维护就要使用修复模式。特注:进入单用户模式,没有开启网络服务,不支持远程连接
Linux 系统中不同的运行级别(Run Level)代表了系统的不同运行状态,例如 Linux 服务器正常运行时处于运行级别3,是能够提供网络服务的多用户模式;而运行级别 1 只允许管理员通过服务器主机的单一控制台进行操作,即“单用户模式”。
linxu下的init命令是进程初始化工具。下面由我为大家整理了linux的init命令的详细解释的相关知识,希望对大家有帮助!
一、linux中的init命令的详细解释
init命令
init命令是Linux下的进程初始化工具,init进程是所有Linu x的进 程的父进程,它的进程号为1。init命令是Linux 操作系统 中不可缺少的程序之一,init进程是Linux内核引导运行的,是系统中的第一个进程。
语法
init(选项)(参数)
选项
-b:不执行相关脚本而直接进入单用户模式;
-s:切换到单用户模式。 参数 运行等级:指定Linux系统要切换到的运行等级。
二、linux中的init命令的详解实例
几个常用的命令
查看系统进程命令:ps -ef | head
查看init的配置文件:more /etc/inittab
查看系统当前运行的级别:runlevel
运行级别
到底什么是运行级呢简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从0到6 ,具有不同的功能。你也可以在/etc/inittab中查看它的英文介绍。
#0 停机(千万不能把initdefault 设置为0)
#1 单用户模式
#2 多用户,没有 NFS(和级别3相似,会停止部分服务)
#3 完全多用户模式
#4 没有用到
#5 x11(Xwindow)
#6 重新启动(千万不要把initdefault 设置为6)
三、linux的init命令的六种模式简介
6种模式中有两种是系统内定的:
0:停止系统运行。init 0〈回车〉相当于 halt〈回车〉。
6:重启系统。init 6〈回车〉相当于 reboot〈回车〉。
如果你了解/etc/inittab文件,就千万不要把0设为缺省登录模式,否则你的Linux的运行就只能两点一线了——开机←→停机,或者是开机←→重启的无限循环。 其他的4种模式实际上是由操作系统确定的。如果你愿意修改Linux的源代码,你也可以定义这4种(甚至6种)模式的实际功能。其实只要知道Linux发布厂商的约定就足够了,下面我们就以蓝点20为例,看看init的常用约定吧——
init 1——进入单用户模式。这和开机是选择Safe Mode是一样的,可以以root的权限对系统进行管理,但是不能进入图形模式,也不支持中文,声卡和网络服务等就更不用提了。总之,它是系统可运行的最低软硬件配置。 它和Windows的安全模式是比较相似的,但一个本质的差别:在于只要你在Linux下运行相应的命令,硬件设备是可以在这种模式下被驱动的。例如只 要你的光驱连线正确,一个mount /dev/cdrom命令,你的光盘内容就随时可以在/mnt/cdrom里读出来。 要注意的是这一模式的字符控制台不能支持中文,但进入Xwin仍然能看到蓝点漂亮的中文字体,输入法也完全没有问题。
init 2——进入无网络服务的多用户模式 如果你的计算机根本没有连网,这个模式就跟普通模式一样了。否则的话别人就不能通过网络www、ftp或telnet登录你的计算机了,但对与ping 命令你的计算机还是会作出反应的。如果连ping你也拒绝访问,那么就不如直接把网线拔了! 如果你的计算机作为网络服务器,这一模式就挺有用了。譬如你要修整系统或更新网站内容,就可以把计算机调到这一模式,然后放心的进行你的工作,等工作完成 后再切换到模式3或5就行了。但注意如果原来已经有用户ftp或telnet进入了你的系统,用init 2 是不能中断他和你的连接的,小心让别人在这个时候黑你一把哦!——执行init 2前先用who命令检查一下吧。 这一模式下,在本机上的使用基本不变。你仍然可以访问网络,上Internet,ftp或telnet到网络中的任何一台服务器。只是你的计算机在网络中不给其他机器提供服务而已。计算机从第3运行级转入这一模式时你会看到一系列网络服务被停止。
init 3或init 4——进入控制台登录的多用户模式 这是蓝点10的默认登录模式,每个用户都要先从黑白屏幕登录之后才可以运行才能start x后进 入KDE精彩的图形世界。而且Xwin启动后,运行 startx的控制台就被锁定了,除非你用startx &把Xwin放到后台运行。要到别的控制台用Ctrl+Alt+F,表示数字1到6中任一个,Ctrl+Alt+F7则回到图形模式专用的7 号控制台(有时要用Ctrl+Alt+F8)。 如果是从init 1 或init 2切换回init 3,我们可以看到一系列服务被重启。
init 5——进入图形化登录的多用户模式 这是蓝点20安装后默认的启动模式。系统启动后或执行init 5命令后,悦目的蓝绿过渡色背景上就出现了漂亮的登录窗口。 所有帐号名都以图标的方式出现在窗口里等待选择,不必自己输入。不过系统管理员可能不高兴——这样系统里有多少用户岂不是让人一目了然不过在KDE控制中心中修改就可以解决问题的,我就不多说啦。 如果系统出了问题,只要启动仍然能进入这个界面(说明X服务器没有问题),root帐号也可以从这里进入Linux的安全模式,就是在左下角的选择框把 模式从kde换为save failed就行了。当然进入的界面绝对没有美观可言,但用于修复X窗口管理器或应用程序的问题是必不可少的。
摘要
当Linux系统出现故障无法正常启动系统时,Linux准备了单用户模式、救援模式等方式可以让我们有效的处理这类问题。本文简单分享一个利用救援模式解决Redhat系统无法启动的案例。
正文
一、 问题背景
1) 问题描述
一台部署了RHEL 72的物理服务器,突发死机故障,在尝试重启时,发现服务器无法正常进入操作系统,直接进入emergency mode。本文主要分享操作系统启动异常的问题排查过程。(服务器死机据后续日志分析,确定为内核的bug所致,本文不进行累述)
2) 故障现象
系统启动后,提示无法找到/dev/mapper/rhel-root,并直接进入emergency mode。
二、 排查思路
1) 收集系统启动异常的相关提示信息,获取到问题关键点:
Warning:/dev/rhel/root does not exist
初步定为配置文件问题或者逻辑卷root本身问题;
2) 尝试在应急模式下检查逻辑卷状态,发现当前情况并不稳定,常用命令无法使用、显示多为乱码;
3) 尝试进入单用户模式,发现情况和应急模式一样;
Redhat 72进入单用户模式:
1、开机启动至内核选择界面,选择第一项,按e进行编辑
2、定位到linux16这一行,找到ro,修改其为rw init=/sysroot/bin/sh
3、按ctrl+X启动至单用户模式
4) 利用系统安装光盘,进入Linux救援模式,进行排查。
Redhat 72救援模式启动方法:
1、把光盘加入光驱,然后启动,以光盘进行引导,选择救援模式(中间具体的步骤不再细说)
2、文件系统挂载到/mnt/sysimage目录下,这时切换到此目录下使用chroot /mnt/sysimage这条命令即可
5) 在救援模式下,首先查看服务器lv的情况,发现所有lv
status均为未激活状态。
查看lv
#Lvdisplay
修改lv
#vgchange -a y /dev/docker/root
6) 在尝试修改root的lv status时,发现root所在的vg名和启动时所指定的vg名不一致,基本确定问题点;
7) 修复
l 编辑文件/etc/default/grub
l 修改此文件中GRUB_CMDLINE_LINUX一行中rdlvmlv为合适的值
l 再执行以下命令重做grub :
n UEFI: grub2-mkconfig -o /boot/efi/EFI/redhat/grubcfg
n 非UEFI:grub2-mkconfig -o /boot/grub2/grubcfg
l 查看文件grubcfg中是否修改为rdlvmlv=rhel/root
l 修改/etc/grub2cfg中root=后接的lv路径改为实际的路径。
8) 系统启动后,通过history日志,确定为该系统业务部署时,使用了vgrename命令修改了vg名。
三、 总结
对于Linux的问题处理,需要对Linux的运行原理有所理解,这此前提下才能根据有限的提示信息判断问题方向、确定排查范围、找到解决方法。同时,提醒各位初学linux的同事么,在进行linux的一些操作时,需要充分考虑这些操作可能造成的影响,避免类似上述的问题发生。
转自 嘉为教育-rhce认证_rhce培训_linux培训_linux认证_linux考证
0条评论