技术开发 频道

基于Core模式安装配置SQL Server 2012

        【IT168 技术】从SQL Server 2012开始,微软支持在Windows Server 2008 R2 SP1或Windows Server 2012的Server Core上安装SQL Server。当然这个功能可能对于大多数的企业并不适用,主要是因为管理员长期习惯了图形界面的操作,对于文字界面的操作表现出来的不适应性。那微软为什么还推出在Core模式上安装SQL Server 2012呢?

  主要原因是因为服务器注重的是性能、稳定性、安全性、可用性等,并不需要拥有炫丽的图形。省略许多应用程序的Server Core,除了系统需求较低外,还可以减少这些应用程序管理与维护,而且需要更新或程序修补的机会也会随之降低。好处是减少了程序更新可能带来的兼容性问题,还可以降低服务器重新启动的次数。此外,由于运作的程序较少,也使它少了许多遭受攻击的面向,可大幅提升系统安全性。

  在Windows Server Core上运行SQL Server可以极大地减少安装操作系统补丁的需要,从而大幅度缩短计划性停机时间。一般来说,基于Windows Server Core环境上因为安装操作系统补丁或重启操作系统的需要,降幅可高达50-60%,这将基于已启用的服务器角色和所应用的补丁程序的类型而有所不同。

  对于SQL Server服务器来说图形界面不是必须的,如果用户需要基于图形界面的SQL Server运维操作,完全可以通过远程管理的方式来实现。在客户端上安装服务器管理工具以及SSMS,除了安全性之外,基于Core模式下安装SQL Server用户只能通过命令行来进行,因此安装的速度快很多,从部署的效率来讲,Core模式是非常好的选择。

  下面我们就通过实例看一下基于Core模式的SQL Server 2012安装及管理:

  Windows Server 2012 Core安装:

  因为Server Core的安装过程主要是在命令提示符下进行,因此一般用户可能会感觉使用起来有点困难,下面我们以图解方式进行描述,希望可以帮助大家对Server Core的安装和使用有一定的了解。

  首先放入Windows Server 2012安装光盘,然后启动计算机,等待出现下图所示:

基于Core模式安装配置SQL Server 2012

  此界面中选择下一步,再点击“现在安装”按钮。然后会提示输入序列号,出现下图所示:

基于Core模式安装配置SQL Server 2012

  在此,我们就选择“服务器核心安装”,下面需要对选择安装磁盘,当选择好安装盘后,点击下一步,就是等待过程了。但这个等待不会太久,一般10分钟左右即可,具体看计算机机的硬件配置。如下图所示:

基于Core模式安装配置SQL Server 2012

  但这个等待不会太久,一般10分钟左右即可,具体看计算机机的硬件配置。安装结束后,我们需要对 Server Core进行常规性的配置。

  设置用户密码:

  第一步就是修改管理员administrator的密码,这个比较简单,直接操作即可:

基于Core模式安装配置SQL Server 2012

  后期,修改用户密码也可以使用命令:net user administrator * ,这里*的好处是按下Enter键 ,之后再键入管理员密码,这样密码将不会直接暴露在屏幕上:

基于Core模式安装配置SQL Server 2012

  设置IP地址:

  不过,默认 DHCP 会自动提供IP地址,只有用户需要设置静态IP地址的时候,这一步才需要执行。可以在命令行窗口键入:Netsh interface ipv4 show interfaces查看网络设备的状态。如下图所示:

基于Core模式安装配置SQL Server 2012

  然后在命令行窗口键入:netsh interface ipv4 set address name="ID" source=static address=StaticIP mask=SubnetMask gateway=DefaultGateway,来设置静态IP地址。其中的ID是上一步中看到的指定的网卡,StaticIP是想要设置的静态IP地址,SubnetMask IP是地址的子网掩码,DefaultGateway 是默认网关。

基于Core模式安装配置SQL Server 2012

  接下来的话,根据实际情况进行域环境的设置等,在此我们就直接默认。

${PageNumber}

  SQL Server 2012的安装:

  SQL Server 2012 不支持在 Server Core 操作系统上使用安装向导进行安装。 在 Server Core 上进行安装时,SQL Server 安装程序支持完全静默模式(通过使用 /Q 参数)或简单静默模式(通过使用 /QS 参数)。若要安装指定的组件,用户需要使用 /FEATURES 参数。常用到的组件如下所示:

组件参数

描述

SQLENGINE

仅安装数据库引擎。

REPLICATION

将复制组件与数据库引擎一起安装。

FULLTEXT

FullText 组件与数据库引擎一起安装。

AS

安装所有的 Analysis Services 组件。

IS

安装所有的 Integration Services 组件。

CONN

安装连接组件。

  在 Server Core 操作系统上安装 SQL Server 2012 时,安装程序支持从命令行安装或者是使用配置文件安装,在此我们使用从命令行安装:

Setup.exe /qs /ACTION=Install /FEATURES=SQLEngine,Replication /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<sqlserver1\administrator>" /SQLSVCPASSWORD="<123.com>" /SQLSYSADMINACCOUNTS="<sqlserver1\administrator>" /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /TCPENABLED=1 /IACCEPTSQLSERVERLICENSETERMS

  接下来我们需要放入SQL Server 2012的安装光盘,然后切换到命令行下,输入相应的命令,如下图所示:

SQL Server 2012的安装

  然后就去喝杯水,等待SQL Server 2012的无人值守安装。这个过程也很快,大约十分钟左右。大家可以看到,整个安装过程非常简单。

  配置SQL Server远程连接:

  我们基于Windows Server core安装SQL Server 的最终目的是为了安全性,一般我们可以启用SQL Server的远程访问,以实现在保证安全的前提下实现管理的便利性。

  若要启用远程连接,我们需要在本地使用 SQLCMD命令,然后在此界面下输入下面的存储过程:

  sp_ configure ‘remote access’,’1’ 此命令的意思是启用SQL Server 2012的远程管理功能

  reconfigure
with override 此命令的命令是使用配置生效

  接下来我们还需要启动SQL Server Browser服务,此服务的作用是侦听对 Microsoft SQL Server 资源的传入请求,并提供计算机上安装的 SQL Server 实例的相关信息。但默认情况下,SQL Server Browser服务是禁用的。在此,我们需要使用下面的命令:

  sc config SQLBROWSER start= auto,在启用该服务后,使用命令net start SQLBROWSE来启动该服务。

  最后,在Microsoft SQL Server PowerShell窗口下,启用TCP/IP协议:在此可以使用以下面的脚本。

$smo = 'Microsoft.SqlServer.Management.Smo.'
$wmi = new-object ($smo + 'Wmi.ManagedComputer')
# Enable the TCP protocol on the default instance.  If the instance is named, replace MSSQLSERVER with the instance name in the following line.
$uri
= "ManagedComputer[@Name='" + (get-item env:\computername).Value + "']/ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name='Tcp']"
$Tcp
= $wmi.GetSmoObject($uri)
$Tcp.IsEnabled
= $true
$Tcp.Alter()
$Tcp

  当然,最后大家不要忘了防火墙的问题,若要通过防火墙访问 SQL Server 实例,必须在运行 SQL Server 的计算机上配置防火墙以允许访问,SQL Server默认实例所使用的TCP端口是1433;SQL Server Browser服务所使用的TCP端口是1434;Transact-SQL 调试器需要用到 TCP 端口 135;如果配置数据库复制功能,由还需要用到TCP端口21、80、137、138、139等。只要在防火墙中允许这些端口通过,基本的SQL Server远程访问就没有问题了。

0
相关文章