在SQL sever 2012 新建查询里 运行代码新建数据库,出现错误,怎么解决。

在SQL sever 2012 新建查询里 运行代码新建数据库,出现错误,怎么解决。,第1张

size 指定得太小了吧。把size改成5试试

create database studentdb

on primary

(name='studentdb_data',

filename='D:\mywork\studentdb_data.mdf',

size=5,

filegrowth=2,

maxsize=10

)

log on

(name='studentdb_log',

filename='D:\mywork\studentdb_data.ldf',

size=5,

filegrowth=2,

maxsize=10

)

主要是云计算。

SQL Server 2012在云计算时代都为我们带来了那些激动人心的功能。

1. AlwaysOn Availability Groups

这项新功能将数据库镜像故障转移提升到全新的高度,利用AlwaysOn,用户可以将多个组进行故障转移,而不是以往的只是针对单独的数据库。此外,副本是可读的,并可用于数据库备份。更大的优势是SQL Server 2012简化HA和DR的需求。

2. Windows Server Core Support

在Windows Server产品中你可以向Ubuntu Server一样只安装核心(意味着你的系统不具备GUI)。这么做所带来的优势是减少硬件的性能开销(至少50%的内存和硬盘使用率)。同时安全性也得到提升(比安装图形版更少的漏洞)。从SQL Server 2012开始将对只安装核心的Windows Server系统提供支持。

3. Columnstore Indexes

这是一个相当酷的功能,是SQL Server之前版本都不具备的。 特殊类型的只读索引专为数据仓库查询设计。数据进行分组并存储在平面的压缩的列索引。 在大规模的查询情况下可极大的减少I/O和内存利用率。

4. User-Defined Server Roles

DBA已经具备了创建自定义数据库角色的能力,但在服务器中却不能。例如DBA想在共享服务器上为开发团队创建每个数据库的读写权限访问,传统的途径手动配置或使用没有经过认证的程序。显然这不是良好的解决方案。而在SQL Server 2012中,DBA可以创建在服务器上具备所有数据库读写权限以及任何自定义范围角色的能力。

5. Enhanced Auditing Features

现今所有的SQL Server版本都具备审计功能,用户还可以自定义审计策略,以及向审计日志中写入自定义事件。而在SQL Server 2012中提供过滤功能,同时大幅提高灵活性。

6.BI Semantic Model

BI Semantic Model代替了ASUDM(Analysis Services Unified Dimensional Model )。BI Semantic Model这种混合的模式允许数据模型支持所有SQL Server BI实践,此外还可允许一些整洁的文本信息图图表。

7. Sequence Objects

对于使用Oracle的人说,这是他们长期希望拥有的功能。序列仅仅是计数器的对象,一个好的方案是在基于触发器表使用增量值。SQL一直具有类似功能,但现在显然与以往不同。

8. Enhanced PowerShell Support

Windows和SQL Server管理员现在就要开始提高他们PowerShell的脚本技能了。Microsoft为了推动其服务器产品上PowerShell的发展做出了很大的努力。在SQL Server 2008中DBA以及有所体会,在SQL Server 2012中增加了更多的cmdlet。

9. Distributed Replay

Oracle已经拥有类似的功能(Real Application Testing),但单独购买会非常昂贵,而SQL Server 2012则包括了Distributed Replay。

Distributed replay功能可让管理员记录服务器上的工作负载,并在其他的服务器上重现。这种在底层架构上的变化支持包以及在生产测试环境下对硬件更改。

10. PowerView

你也许曾听说过这个名为Crescent的项目,这是相当强大的自服务BI工具包,允许用户创建企业级的BI报告。

11. SQL Azure Enhancements

虽然这与Microsoft释放出的SQL Server 2012并无直接联系,但Microsoft正在SQL Azure做关键的改进。Azure现已具备Reporting Services以及备份Azure数据存储的能力,这是个不小的进步。Azure现在允许最大150GB的数据库。同时Azure数据同步可更好适应混合模型和云中部署的解决方案。

12. Big Data Support

在去年的PASS (Professional Association for SQL Server)峰会上,Microsoft宣布与Hadoop供应商Hortonworks合作,并计划发布Linux版本的Microsoft SQL Server ODBC驱动程序。同时Microsoft也在构建Hadoop连接器,Microsoft表示,随着新连接工具的出现,客户将能够在Hadoop、SQL Server和并行数据仓换环境下相互交换数据。Microsoft已经在大数据领域表明了自己的立场。

SQLServer 2012 Always on是针对高可用性和灾难恢复的新解决方案。可以配置一个或多个辅助副本以支持对辅助数据库进行只读访问,并且可以将任何辅助副本配置为允许对辅助数据库进行备份。 这样就提供了硬件的使用效率。

“可用性组”针对一组离散的用户数据库(称为“可用性数据库”,它们共同实现故障转移)支持故障转移环境。一个可用性组支持一组主数据库以及一至四组对应的辅助数据库。可用性组在可用性副本级别进行故障转移。故障转移不是由诸如因数据文件丢失或事务日志损坏而使数据库成为可疑数据库等数据库问题导致的。

每组可用性数据库都由一个“可用性副本”承载。有两种类型的可用性副本:一个“主副本”和一到四个“辅助副本”。前者用于承载主数据库,后者则承载一组辅助数据库并作为可用性组的潜在故障转移目标。主副本使主数据库可用于客户端的读写连接。此外,它在称为“数据同步”的过程中使用,在数据库级别进行同步。主副本将每个主数据库的事务日志记录发送到每个辅助数据库。每个辅助副本缓存事务日志记录(“硬化”日志),然后将它们应用到相应的辅助数据库。主数据库与每个连接的辅助数据库独立进行数据同步。因此,一个辅助数据库可以挂起或失败而不会影响其他辅助数据库,一个主数据库可以挂起或失败而不会影响其他主数据库。

或者,您可以配置一个或多个辅助副本以支持对辅助数据库进行只读访问,并且可以将任何辅助副本配置为允许对辅助数据库进行备份。部署 AlwaysOn可用性组需要一个 Windows Server故障转移群集 (WSFC)群集。

图显示一个可用性组,该组包含最大数目的可用性副本,即一个主副本和四个辅助副本。

来自:http://msdn.microsoft.com/zh-cn/library/ff877884.aspx

虽然2012 Always on是基于WSFC的,但是并不需要共享存储,所以配置就非常简单。

下面是我的安装步骤:

至少需要三台机器(我创建了三台虚拟机,一台是作为DC,DNS服务器,两台Nod3)

(备注:为啥一定要3台,因为SQL SERVER 的 Cluster服务不能安装在域服务器上。Windows2008 R2 和SQL SERVER 2012 一定要打上sp1.否则有不可预知的错误)

机器名

角色

OS

IP Address

DC

Domain Controller

Windows 2008R2

192.168.1.10

Node1

Cluster Node 1

Windows 2008R2

192.168.1.11 Public

192.168.2.1

心跳线

Node2

Cluster Node 2

Windows 2008R2

192.168.1.12 Public

192.168.2.2

心跳线窗体底端

首先配置Windows集群:

1. 安装.NETFramework 3.5.1 Features和Failover Clustering

2. 安装Windows KB 2494036

3.新建集群

4.选择加入集群的服务器:

5.检测配置:

6.不需要选择检测共享磁盘(AlwaysOn不需要)

7.开始检测:

8.检测内容(检测完成后可以导出Report):

9.之后输入Cluster名字和IP点击下一步创建成功,成功后打开Server Manager查看集群配置(可以看到并没有共享磁盘,跟传统的集群还是有区别的):

现在我们集群已经配置后了,下一步是安装SQLServer并且配置Always On.

我们已经配置了Cluster,Part2 我们安装SQL Server 2012 评估版(要使用64位的SQLServer, X86不支持Always On)并且配置Alaways On Group.

1. 以管理员身份安装

2.选择单机安装(不是集群安装)

3.SQL Server 2012的新功能,可以在安装的时候搜索最新的补丁,将补丁也以前安装(这个是可选项)

4.规则检测

5.选择安装组件

6.实例名:

7.计算需要的磁盘空间:

8.Service账户(域账户):

9.排序规则(可以根据自己需要选择):

10.设置权限,数据库文件备份地址以及Filestream选项:

11.安装后需要重新启动(可以查看安装日志):

12.在ConfigurationManager中对SQL Server开启Always OnHigh Availability(可以自动检测到前面我们创建的Cluster名字)

设置更改后需要重启Service.现在一切都具备了,我们可以配置Always On group了。

1.创建新的可用性组(可用性组向导,也可以用下面的选型):

2.输入可用性组的名字:

3.选择组中的数据库:

4.Replica 选择Node2(选择自动Failover/可读数据库):

5.点击下一步,Node1将会备份数据库到Share Folder然后还原到Node2做同步 (Node1为主,Node2为辅助)

下一步就是测试Node2数据可读已经Failover.

可用性组我们已经创建成功了,现在测试一下Node2 上读取数据以及Failover.

1. 数据测据:Node1上创建表test插入记录

在Node2上访问test数据库,数据可以查到(在Mirror中是不可以查询的,而且数据同步不会导致Node2的连接断掉):

2. Failover测试:

连接到Node2:

Failover后(Primary已经变成Node2):

可以看到Always On group 既保证了高可用性,有可以实现同步数据库的只读访问,提供了硬件的利用率,非常给力的一个功能。

最后,建议在 “AlwaysOn 高可用性 ”下-》 “可用性组” 中,增加一个可用性组侦听器,在侦听器中可以设定一个IP,对外用此IP提供服务。这样,SQL服务的IP可以不同于windows集群的IP。两项服务有可能会在两台不同的机器上。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10707895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存