SQL Server

三大常用数据库事务详解之三:事务运行模式

限于喜欢 提交于 2020-04-25 17:04:49
三、事务的运行模式 通常,事务以3种模式运行,他们分别是: 1. 自动提交事务 每一条单独的SQL语句都在其执行完成后进行自动提交事务,即执行 SQL 语句后就会马上自动隐式执行 COMMIT 操作。如果出现错误,则进行事务回滚至之前状态。 SQL SERVER和MY SQL中都默认开启自动提交事务,ORACLE则显式提交事务。这三种产品都提供了各自的方式来开闭自动提交事务模式,具体如下: 1)MYSQL中通过下面语句来开启或关闭当前会话或全局的自动提交事务模式。 set session autocommit=0; -- 0是关闭,1是开启;session是设置当前会话变量,global是设置全局变量 2)SQL SERVER中使用下面语句来关闭或打开自动提交事务模式 。或者通过 Sql Server Managerment Studio,在 Tools -> Options Query Execution -> SQL Server -> ANSI 选项中勾选SET IMPLICIT_TRANSACTIONS设置开启还是关闭自动事务提交模式。 SET IMPLICIT_TRANSACTIONS ON; -- ON是打开隐式事务模式或关闭自动事务模式,OFF 是关闭隐式事务模式或打开自动提交事务模式 3)ORACLE通过如下语句开启或者关闭自动提交事务模式 set

关于ef+codefirst+mysql/dapper(dbFirse)(入门)

六眼飞鱼酱① 提交于 2020-04-25 13:53:45
  ef+mssql详细是许多.net程序员的标配。作为一个程序员当然不能只会mssql这一个数据库,今天简单聊聊ef+mysql。推荐新人阅读。   1】首先创建一个mvc项目,如图: 创建完毕之后再nuget中分别引用MySql.Data、MySql.Data.Entity、EntityFramework(注意MySql.Data、MySql.Data.Entity版本必须一致) 2】创建数据库连接 1)在model文件夹下创建一个UserTs.cs public class UserTs { [Key] // id public string id { get ; set ; } // 姓名 public string cusName { get ; set ; } } View Code 2)然后创建MYDBContext.cs // 数据库上下文 public class MYDBContext : DbContext { public MYDBContext() : base ( " name=conncodefirst " ) { } public DbSet<UserTs> Customer { get ; set ; } } View Code 3)在web.config中添加以下代码 <startup> <supportedRuntime version= "

oracle数据库tns配置方法详解

≡放荡痞女 提交于 2020-04-25 08:41:55
TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS TNS简要介绍与应用 Oracle中TNS的完整定义:transparence Network Substrate透明网络底层,监听服务是它重要的一部分,不是全部,不要把TNS当作只是监听器。 TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,当然在少数情况下,不用配置TNS也可以连接Oracle数据库,比如通过JDBC。如果通过TNS连接Oracle,那么客户端必须安装Oracle client程序。 Oracle当中,如果想访问某个服务器,必须要设置TNS,它不像SQL SERVER那样在客户端自动列举出在局域网内所有的在线服务器,只需在客户端选择需要的服务器,然后使用帐号与密码登录即可。而Oracle不能自动列举出网内的服务器,需要通过读取TNS配置文件才能列出经过配置的服务器名。 配置文件名一般为:tnsnames.ora,默认路径:%ORACLE_HOME%\network\admin\tnsnames.ora 上图中的CGDB和STDCG就是对应的TNS,HOST是指向数据库服务器的IP,当然局域网内用计算机名称也是可以的

Oracle Job定时任务详解、跨数据库数据同步

匆匆过客 提交于 2020-04-25 08:40:37
  业务需求,需要与A公司做数据对接,我们公司用的Oracle,A公司用的SQL Server数据库,如何跨数据库建立连接呢?这里使用的是DBLink,不会配置的请看我的另外一篇博客: https://www.cnblogs.com/chenyanbin/p/11291752.html   如果做数据同步呢?上面我们已经通过DBLink与SQL Server建立连接了,那么我们就可以获取A公司表中的数据。在通过Oracle Job定时任务,具体JOB还有那些功能,这里不做详细介绍了,百度上一大堆,这里我们只讲解Oracle Job创建步骤。   我们已经知道job是一个定时任务,也就是说可以在一个规定的时间内,执行某一项任务,这个任务就是“存储过程”。 第一步:先创建存储过程(做一个简单DEMO往一张表插入当前时间) 1 create or replace procedure proc_add_test as 2 begin 3 insert into test values (to_char(sysdate, ' yyyy-mm-dd hh:mi ' )); /* 向测试表插入数据 */ 4 commit; /* 提交 */ 5 end; 6 7 8 create or replace procedure 存储过程名称 as 9 begin 10 /* 业务逻辑片段 */ 11

SQL SERVER 2012 AlwaysOn

久未见 提交于 2020-04-25 07:59:23
搭建 AlwaysOn 是件非常繁琐的工作,需要从两方面考虑,操作系统层面和数据库层面,AlwaysOn 非常依赖于操作系统,域控,群集,节点等概念; DBA 不但要熟悉数据库也要熟悉操作系统的一些概念;否则理解的会不深刻,一旦AlwaysOn 出现故障,首先根据错误日志,来排查是操作系统问题还是数据库问题; 部署AlwaysOn 分两部分: 1,操作系统层面; https://www.cnblogs.com/lvzf/p/10565298.html 2,数据库层面; https://www.cnblogs.com/lvzf/p/10566598.html 3,维护AlwaysOn; https://www.cnblogs.com/lvzf/p/10569857.html 本篇文章详细介绍- 操作系统层面的部署; 1 ,引言 1.1 编写目的 在工作中为了更方便的部署 SQLSERVER 2012 高可用性 AlwaysOn –可用性组;把部署流程以及部署注意事项记录其中。方便以后参考使用; 1.2 前期规划 PcName OS IP Comment AD1074 Win2008R2 Ent SP1 192.168.140.74 主域控 AD2078 Win2008R2 Ent SP1 192.168.140.78 备域控 DB124 Win2008R2 Ent SP1 192

SQL SERVER 2012 AlwaysOn

有些话、适合烂在心里 提交于 2020-04-25 07:59:09
搭建 AlwaysOn 是件非常繁琐的工作,需要从两方面考虑,操作系统层面和数据库层面,AlwaysOn 非常依赖于操作系统,域控,群集,节点等概念; DBA 不但要熟悉数据库也要熟悉操作系统的一些概念;否则理解的会不深刻,一旦AlwaysOn 出现故障,首先根据错误日志,来排查是操作系统问题还是数据库问题; 部署AlwaysOn 分三部分: 1,操作系统层面; https://www.cnblogs.com/lvzf/p/10565298.html 2,数据库层面; https://www.cnblogs.com/lvzf/p/10566598.html 3,维护AlwaysOn; https://www.cnblogs.com/lvzf/p/10569857.html 本篇文章详细介绍- AlwaysOn 维护 接上文 SQL SERVER 2012 AlwaysOn - 数据库层面 02 下面开始对AlwaysOn 维护进行介绍; 1,新增数据库 可用性组添加数据库 Test 数据库初始化过程省略,详细请看上面【数据库层面 02 】 初始化过程 点击:AlwaysOn 高可用性 – 可用性组-可用性数据库-添加数据库 选中 Test 数据库 点击 【下一步】 选中 - 【仅联接】,点击 【下一步】 点击【全部联接】 联接 DB128,DB129 数据库实例; 下图显示

我对SQL性能优化的看法,对我的文章有提议的欢迎评论!

╄→尐↘猪︶ㄣ 提交于 2020-04-25 07:53:06
影响你的查询速度的原因是什么? 网速不给力,不稳定。 服务器内存不够,或者SQL 被分配的内存不够。 sql语句设计不合理 没有相应的索引,索引不合理 表数据过大没有有效的分区设计 数据库设计太2,存在大量的数据冗余 那我们如何找到速度慢的原因呢? 首先你要知道是否跟sql语句有关,确保不是机器开不开机,服务器硬件配置太差,没网你说p啊 sql server profiler,分析出sql慢的相关语句,就是执行时间过长,占用系统资源,cpu过多的工具 然后是这篇文章要说的,sql优化方法跟技巧,避免一些不合理的sql语句,取暂优sql 再然后判断是否使用啦,合理的统计信息。 确认表中使用啦合理的索引 数据太多的表,要分区,缩小查找范围 分析SQL语句执行的时间 1.记录查询时间和cpu占用时间 set statistics time on select * from DetitalIndex set statistics time off 2.记录I/O的支配 set statistics io on select * from dbo.Product set statistics io off 扫描计数:索引或表扫描次数 逻辑读取:数据缓存中读取的页数 物理读取:从磁盘中读取的页数 预读:查询过程中,从磁盘放入缓存的页数 lob逻辑读取:从数据缓存中读取,image,text

006.SQLServer AlwaysOn可用性组高可用部署

风格不统一 提交于 2020-04-25 06:34:11
一 数据库镜像部署准备 1.1 数据库镜像支持 有关对 SQL Server 2012 中的数据库镜像的支持的信息,请参考:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/cc645993%28v%3dsql.110%29 1.2 其他前置条件 需要安装.NET 补丁,详见:https://support.microsoft.com/zh-cn/help/2654347/an-update-introduces-support-for-the-alwayson-features-in-sql-server-2。 确保参与参与一个或多个可用性组的计算机不是域控,域控制器节点不支持可用性组。 确保每台计算机都是 Windows Server 故障转移群集 (WSFC) 群集中的节点,详见:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/hh270278%28v%3dsql.110%29。 确保有足够的WSFC节点,详见:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/ff877884%28v%3dsql

SQL Server 占用内存太高,查找占用内存高以及影响其性能的sql语句

雨燕双飞 提交于 2020-04-25 06:31:11
当发现SQL Server 占用的资源过高,有时重启电脑也解决不了问题时,建议通过如下语句检查SQL语句的问题, 如果是当天出的问题增加{ order by last_worker_time desc ,想看一下今天哪些sql执行出现问题了} SELECT s2.dbid, s1.sql_handle, (SELECT TOP 1 SUBSTRING(s2.text,statement_start_offset / 2+1 , ( (CASE WHEN statement_end_offset = -1 THEN (LEN(CONVERT(nvarchar(max),s2.text)) * 2) ELSE statement_end_offset END) - statement_start_offset) / 2+1)) AS sql_statement, execution_count, plan_generation_num, last_execution_time, total_worker_time, last_worker_time, min_worker_time, max_worker_time, total_physical_reads, last_physical_reads, min_physical_reads, max_physical_reads,

【SqlSever 2008R2】Sql Sever 2008R2 安装及配置

扶醉桌前 提交于 2020-04-25 06:08:28
一、安装前的准备 1. 需要.Net Framework 3.5,在SQL2008 R2安装的前会自动更新安装 2. 需要Widnows PowerShell的支持,WPS是一个功能非常强大的Shell应用,命令与DOX/UNIX兼容并支持直接调用.NET模块做行命令编辑,是非常值得深入研究的工具(在SQL2008 R2安装时会自动更新安装) 3. 需要确保Windows Installer的成功启动,需要4.5以上版本(需要检查服务启动状态service.msc) 4. 需要MDAC2.8 sp1的支持(XP以上系统中已集成) 5. A8的数据库必须选择SQL SERVER 2008 R2,机器上已经安装Visual studio 2008则需要重新安装 2008 R2版本。 二、安装配置过程 1.进行SQL Server安装中心,选择"安装"选项,在新的电脑上安装SQL2008 R2可以直接选择“全新SQL Server独立安装或向现有安装功能",将会安装一个默认SQL实列,如下图 2.功能选择,对于只安装数据库服务器来说,功能的选择上可以按实际工作需要来制定,本人一般选择:数据库引擎服务、客户端工具连接、SQL Server 联机丛书、管理工具-基本、管理工具-完整。其中数据库引擎服务是SQL数据库的核心服务,Analysis及Reporting服务可按部署要求安装