• [技术干货] python代码连接sqlserver数据库
    连接sqlserver数据库需要先安装三方包pymssql,很奇怪到目前为止只发现2.2.7版本的可以正常连接1.安装pymssqlpip install pymssql==2.2.7如果是设计器自带的python环境,需切换到设计器安装目录,进入python文件夹之后cmd进入doc命令行 执行如下命令:python.exe -m pip install pymssql==2.2.72.python代码实现import pymssql #服务器IP+端口号,账户,密码,数据库名 connect = pymssql.connect("ip:port","user","password","database") if connect: print("连接成功!")如果连接成功,终端会打印出"连接成功",需要注意一下数据库的编码是否是utf-8,如果不是可在代码中指定编码格式charset=""connect = pymssql.connect("ip:port","user","password","database",charset="")
  • [技术干货] 主流数据库迁移
    1、Mysql一、mysqldump步骤:1.使用mysqldump导出自建数据库的数据2.将导出的两个文件上传到ECS实例上3.将导出的文件导入到目标RDS中4.导入成功后登录RDS实例数据库中查看数据是否正常。二、数据复制DRS步骤:(以本地mysql迁移至RDS为例)1.在“实时迁移管理”页面,单击“创建迁移任务”,进入创建迁移任务页面。2.在“迁移实例”页面,填选区域、任务名称、描述、迁移实例信息。3.在“源库及目标库”页面,迁移实例创建成功后,填选源库信息和目标库信息,单击“源库和目标库”处的“测试连接”,分别测试并确定与源库和目标库连通后,勾选协议。4.在“迁移设置”页面,设置迁移用户和迁移对象.5.在“预检查”页面,进行迁移任务预校验,校验是否可进行迁移。6.进入“参数对比”页面,进行参数对比。7.在“任务确认”页面,设置迁移任务的启动时间、任务异常通知设置、SMN主题、时延阈值、任务异常自动结束时间,并确认迁移任务信息无误后,单击“启动任务”,提交迁移任务。2. SQL server 工具1 使用SQLserver导入导出功能将本地SQL Server数据库迁移到RDS for SQL Server二、步骤:(以本地sqlserver迁移至RDS为例)1.登录控制台,选择“数据库 > 云数据库 RDS”“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页签。2.在“基本信息”页签下单击“绑定”,在弹出框选择对应的弹性IP。3.在本地安装SQL Server客户端管理工具,通过弹性IP进行连接4.通过SQL Server自带的脚本生成工具,生成ECS上的数据库结构脚本5.在SSMS客户端中打开生成的脚本SQL文件,连接到RDS对应实例上。6.完成以上步骤后通过SQL Server自带的导入导出功能完成数据迁移。工具2 DRS备份迁移步骤 cid:link_01.在“备份迁移管理”页面,单击“创建迁移任务”。在“选定备份”页面输入任务名称和描述,填选备份文件信息,单击“下一步”。在“选定目标”页面,根据所选数据库类型,配置相应的数据库信息,单击“下一步”在“信息确认”页面核对配置详情后,勾选协议,单击“下一步”。在“备份迁移管理”页面任务列表中,观察对应的恢复任务的状态为“恢复中”,恢复成功后,任务状态显示“成功”。工具3 Golden Gate在源端和目标端的数据盘建立ggs目录将OGG软件包解压到ggs目录中打开源端和目标的SQL Server代理服务并将启动类型改为自动在源端建立数据库source,目标端建立数据库target在源端和目标端SQLServer中执行对应的语句创建测试表为源端和目标端创建用户,并授权源端:并授权用户名和密码在源端source库启用cdc在源端和目标端分别创建ODBC数据源ogg配置,源端和目标端的ogg安装目录中执行ggsci。配置完成,测试迁移是否正常使用3、Oracle利用华为云云数据库RDS和分布式数据库中间件DDM完成Oracle应用迁移上云,提高访问效率,轻松应对高并发的实时交易场景一、工具1.若采用工具流至云下或云上自建oracle:Oracle Golden Gate/Data guard/Always On/数据库自带迁移工具等2.若采用公有云服务至云数据库postgre:UGO+DRS二、Oracle数据库迁移上云的流程迁移上云流程(以GoldenGate为例)Oracle GoldenGate 数据复制过程如下:利用抽取进程(Extract Process)在源端数据库中读取Online Redo Log或者Archive Log,然后进行解析,只提取其中数据的变化信息,比如DML操作——增、删、改操作将抽取的信息转换为GoldenGate自定义的中间格式存放在队列文件(trail file)中再利用传输进程将队列文件(trail file)通过TCP/IP传送到目标系统。目标端有一个进程叫Server Collector,这个进程接受了从源端传输过来的数据变化信息把信息缓存到GoldenGate 队列文件(trail file)当中,等待目标端的复制进程读取数据。• GoldenGate 复制进程(replicat process)从队列文件(trail file)中读取数据变化信息,并创建对应的SQL语句,通过数据库的本地接口执行,提交到目标端数据库,提交成功后更新自己的检查点,记录已经完成复制的位置,数据的复制过程最终完成2、Oracle迁移至数据仓库(GaussDB)的工具和流程使用DRS的实时同步功能将本地Oracle数据库实时迁移至华为云GaussDB(for openGauss)。通过全量+增量同步,实现源数据库Oracle和目标数据库GaussDB(for openGauss)的数据长期同步。(1)迁移至数据仓库的工具:DRS(2)迁移至数据仓库的流程:创建VPC和安全组创建GaussDB(for openGauss)实例迁移前构造数据迁移数据库(创建DRS实例,将本地Oracle上的test_info数据库迁移到GaussDB(for openGauss)实例中test_database_info数据库中)迁移后进行数据校验PS:补充业务架构和迁移原理(防止考到)1、业务架构图2、迁移原理次实践使用全量+增量同步功能,原理如下:全量同步阶段,先进行结构迁移,例如表、主键、唯一键的迁移。结构迁移完成后,启动增量数据抽取,以确保全量数据同步期间的增量数据完整的抽取到DRS实例。启动全量迁移任务。全量迁移完成后自动进入增量同步,从全量迁移开始抽取的位点开始回放。当增量回放全部完成后,启动比对任务进行一致性检查,支持实时比对。实时比对数据一致时,可以启动业务割接若需要将Oracle数据进一步挖掘和分析,需要将数据导入到数仓中,在华为云上应该怎么完成数据导入,并说明下主要步骤? Oracle迁移至数据仓库(GaussDB)的工具和流程 (CDM/DRS/备份迁移:数据库上传OBS,恢复) 1.CDM (1)准备数据(2)创建CDM集群(3)CDM集群绑定EIP (4)创建Oracle连接和DWS连接 (5)创建数据迁移作业(6)查看迁移的数据统计 2.使用DRS的实时同步功能将本地Oracle数据库实时同步至华为云GaussDB(for openGauss)。通过全量+增量同步,实现源数据库Oracle和目标数据库GaussDB(for openGauss)的数据长期同步。 (1)迁移至数据仓库的工具:DRS (2)迁移至数据仓库的流程: a) 创建VPC和安全组 b) 创建GaussDB(for openGauss)实例 c) 迁移前构造数据 d) 迁移数据库(创建DRS实例,将本地Oracle上的test_info数据库迁移到GaussDB(for openGauss)实例中test_database_info数据库中) e) 迁移后进行数据校验 3.备份迁移 存入OBS再转储至DWS步骤:(1)开始(2)上传数据至OBS(3)创建OBS外表(4)执行导入数据(5)处理错误表(6)优化查询效率(7)结束 OBS导入导出数据时,暂不支持跨Region进行OBS数据导入导出,必须确保OBS和DWS集群在同一个Region中目标数据库应该选择什么类型和部署方式? 华为云服务的哪些特性可以同时既满足高性能,又能满足高可靠性的需求? (多实例+DDM+缓存数据库+一主一备5只读(集群部署)) 一、数据库本身特性 服务高可用:可用区内部主备、跨可用区主备 数据高可靠:在线存储数据可靠性9个9、备份存储数据可靠性11个9 数据高安全:(1)连接安全:VPC、子网、安全组、VPN、SSL(2)安全管理:管控平台严格做到不碰用户业务数据(3)数据加密:储存数据加密,秘钥严格管理 二、用分布式数据库中间件DDM 1、分布式数据库中间件(DDM):分布式关系型数据库,兼容Mysql协议,采用存储计算分离架构的模式,使得存储、计算层可以无限扩展,从而拥有海量数据高并发访问能力。 三、采用缓存数据库 采用分布式缓存服务Redis、Memcached对象缓存服务等产品,基于双机热备的高可用架构,基于主备、读写分离、集群等丰富类型的缓存类型,满足用户高并发及数据快速访问的业务需求。
  • [问题求助] RPA通过控件 写入到excel表格内容,怎么执行了 表格里没有信息呢?
    表格里没有数据,是需要执行其他的控件吗
  • [技术干货] 华为云RDS-SQLserver主备集群定时作业手动同步实践指导
    【背景】 SQLserver原生产品不支持主备之间作业自动同步,主备集群架构下备节点需手动配置作业,避免主节点故障或者降备,备节点升主后集群作业不生效。影响数据同步或者数据迁移。以下操作指导介绍如何在华为云上通过DAS登录备节点同步主节点作业。【试验环境】【环境配置】1.   通过以下SQL脚本,创建timedtask数据库、taskinfo表、初始化表数据--创建数据库CREATE DATABASE timedtask;--创建表USE [timedtask];CREATE TABLE [dbo].[taskinfo] (        [ID] int NOT NULL,        [taskname] varchar(50) NULL,        [begintime] datetime DEFAULT GETDATE() NULL,        [endtime] datetime DEFAULT GETDATE() NULL,        PRIMARY KEY CLUSTERED ([ID]));--插入数据insert into [taskinfo] ([ID],[taskname],[begintime],[endtime]) values ('1','taskinfo-table-back','2020-10-09 14:21:07.417','2020-10-09 14:21:07.417');insert into [taskinfo] ([ID],[taskname],[begintime],[endtime]) values ('2','taskinfo-table-back','2020-10-08 14:22:04.000','2020-10-08 14:22:04.000');insert into [taskinfo] ([ID],[taskname],[begintime],[endtime]) values ('3','taskinfo-table-back','2020-10-07 14:23:17.000','2020-10-07 14:23:17.000');insert into [taskinfo] ([ID],[taskname],[begintime],[endtime]) values ('4','taskinfo-table-back','2020-10-06 14:22:23.173','2020-10-06 14:22:23.173'); 2.  下载安装SQL Server Management Studio数据库客户端https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-20173.   准备作业执行SQL脚本DECLARE @UNIXTIME varchar(255),        @TABLES_NAME varchar(255),        @str_sql nvarchar(MAX);SET @UNIXTIME =cast (DATEDIFF(SS,'1970-1-1 00:00:00',GETUTCDATE()) as varchar(255));SET @TABLES_NAME='taskinfo_bak_'+ @UNIXTIME;SET @str_sql='select * into ' + @TABLES_NAME  +  ' from taskinfo' ;EXEC sp_executesql @str_sql;【操作步骤】1.   使用SSMS客户端登录数据库(主节点)2.   创建作业“备份taskinfo表”,并每周日凌晨0点执行作业(主节点)。3.   将新建的作业“备份taskinfo表”导出为SQL脚本用于同步作业到备节点 ,右击鼠标选择编辑作业脚本为-CREATE到-新查询编辑器窗口,如下图所示。4.   登录备节点:使用DAS工具登录数据库,点击“SQL操作-SQL窗口”,点击“主库 切换SQL执行点”,如下图所示5.   确认登录到备库后,然后在SQL查询窗口执行,从“步骤三拷贝的SQL脚本”,并确认执行成功。注意:一般数据库作业都是大批量事务,建议在业务低峰期执行,避免在高峰期执行影响数据库的性能。
  • [技术干货] MongoDB经典故障系列四|调整oplog大小,引起从库宕机怎么办?
  • [技术干货] SQL Server内存管理小知识
    今天和大家聊一聊SQL server的内存管理,说之前我们需要先提出一个问题,SQL Server到底是如何使用内存的?弄清楚如何使用之后,才能谈如何管理。简单说,SQL Server 数据库的内存使用原则是有多少内存就会占用多少内存,不会自动释放内存。原因是它的存储引擎本身是一个Windows下的进程,所以在使用内存时和其它Windows进程是一样的,都要向Windows申请内存,申请到内存之后,SQL Server的内存使用可以粗略地分为两个部分:一是缓冲池内存,被数据页和空闲页占用;二是非缓冲内存,被线程、DLL、链接服务器等占用。其中缓冲池内存占大头。这样会有什么问题呢?打个比方,如在执行一条结果集很大的 sql 时,数据查询取出后,会一直占用内存,直到机器内存被占满(并不会撑爆,因为可以通过图去限制最大内存,一般占满后仍然比服务器机器内存稍小),在重启数据库服务前,SQL Server不会主动释放该内存,也没有任何办法可人为释放,一直占用到 max server memory 的设定值,因此查看 SQL Server的内存基本使用率相对较高(80%以上)。 那怎么解决呢?最直接的办法是:人为修改最大可占用物理内存进行限制。方法一:缓冲池所占内存是通过下图1最大服务器内存和最小服务器内存来设置的,因此sqlservr.exe所占的内存(如图2)有可能会大于图1中所设置的最大内存。管理员用户登录数据库客户端(Microsoft SQL Server Management Studio),在实例名(树形菜单根节点,显示登录名那栏)上右键,选择属性-->内存,设置“最大服务器内存”即可根据实际情况调整内存(单位为MB),如调整到当前总的服务器内存的 70%左右使用率。图1 SQL Server可控制内存选项图2 SQL Server 进程内存使用情况方法二:如果使用的是华为云RDS SQL Server ,那解决方法就更加简单了,只需要到控制台实例管理中修改最大内存(max server memory)参数值即可,且修改完该参数不需要重启数据库,不得不说云数据库使用起来更加便捷清晰,更多华为云RDS SQL Server的使用可参考官方文档:https://support.huaweicloud.com/rds/index.html 
  • [行业资讯] 华为云数据库 SQL Server 2017 正式商用,秒级RTO容灾切换
    华为云 SQL Server 2017 正式商用,采用微软最新 Always On 高可用架构,支持1主1备双实例和5只读副本,具有超强拓展性。此外,该版本真正实现了秒级RTO容灾切换,保证企业核心业务7*24小时在线,是保障企业用户关键业务顺利进行的绝佳利器。华为云 SQL Server 2017 优势更强拓展相较而言,SQL Server 其他版本采用的镜像架构,仅支持1主1备两个实例,不支持只读副本。 华为云 SQL Server 2017 采用微软最新 Always On 高可用架构,支持创建最多5个只读副本,强拓展性有效减轻主节点读写压力,提升数据库性能。 更快容灾SQL Server 2008 到2016版本主备间的切换为数据库粒度,切换较为缓慢,RTO 时间从30秒到180秒不等,耗时较长,无法满足核心业务不中断的需求。 华为云 SQL Server 2017 得益于 Always On 高可用架构, RTO 无限趋向于 0 ,真正实现主备切换时间由分钟级向秒级的跨越,保障用户业内最高等级的应用在线能力。 更多场景基于镜像架构的 SQL Server 实例无法有效进行配置和拓展,无法支持复杂场景。 华为云 SQL Server 2017 支持更多灵活的架构,且后续将陆续支持1主2备,跨 Region容灾、本地只读容灾等多种灵活场景,对用户而言有更强可选择性。 值得一提的是,华为云 SQL Server 2017 也继承了其它版本 100% 支持分布式事务与 Link Server 服务的特性。该特性极大的方便用户通过创建 Link Server 连接,跟用户线下实例、ECS 实例进行跨库数据交互,大幅提升数据流通性和用户体验。 当前,华为云 SQL Server 2017 已支持 2U8G、2U16G、 4U8G、4U16G、4U32G、8U32G、8U64G、16U64G、16U128G、32U128G、32U258G、60U256G、60U512G 在内的多种规格,且提供普通IO、高IO、超高IO等不同存储空间的实例供选型。 此外,华为云 SQL Server 支持本地备份文件一键上云还原。用户可通过华为云 DRS 数据库迁移服务将本地备份文件上传到 OBS 对象存储中,再通过创建备份迁移任务,将 OBS 中的备份文件一键还原到目标 SQL Server 云数据库服务上。 该服务能够 100% 向下兼容低版本的 SQL Server 数据库备份文件还原到高版本实例上,帮助用户降低成本,统一版本策略,实现数据和业务无忧上云。想了解更多信息,请扫码关注【HW云数据库】