1,通过浏览添加的DLL,会在bin下面生成一对应人.refresh文件,里面有存位置
2,通过添加整个项目方式,会在.sln文件中保存此配置
3,通过添加.net已有程序集的方式,会在web.config中有记录。
Visual Studio Website Reference Paths
http://stackoverflow.com/questions/279451/visual-studio-website-reference-paths
1,通过浏览添加的DLL,会在bin下面生成一对应人.refresh文件,里面有存位置
2,通过添加整个项目方式,会在.sln文件中保存此配置
3,通过添加.net已有程序集的方式,会在web.config中有记录。
Visual Studio Website Reference Paths
http://stackoverflow.com/questions/279451/visual-studio-website-reference-paths
工具-选项-查询结果-SQL Server 以网络显示结果中可设置最大非XML数据为65535
但实际最大只能到43679 。
测试:
select replicate(convert(varchar(max),’-‘),65535)
解决方法:鉴于xml数据大小可以不限制,可以转成xml来展示
select replicate(convert(varchar(max),’-‘),65535)
FOR XML PATH(”)
对于表中nvarchar(max)数据,用select也会有上述问题,解决方法是打开表,copy数据
为文件生成指纹,可以比较文件是否篡改。
C# 计算文件的MD5值:http://www.cnblogs.com/anjou/archive/2008/08/05/1261290.html
@echo off
::set fdir=%WINDIR%\Microsoft.NET\Framework64
::if not exist %fdir% (
:: set fdir=%WINDIR%\Microsoft.NET\Framework
::)
::set msbuild=%fdir%\v4.0.30319\msbuild.exe
::%msbuild% website.publishproj /p:DeployOnBuild=true /p:PublishProfile=.\App_Data\PublishProfiles\发布.pubxml /p:VisualStudioVersion=11.0 /p:OutputPath=D:\deploy
::复制
ROBOCOPY M:\Luke\LengKu\Web N:\deploy\ccms\ccms /XO /MIR /XF web.config ConnMapping.xml release.bat website.publishproj JavaField.xml /XD Files ewebeditor extjs ExtLib icon images JScript Resources
::压缩并添加解压的文件路径,这样copy上去后直接点解压即可
del N:\deploy\ccms.exe
cd /d N:\deploy\ccms
“C:\Program Files\WinRAR\rar.exe” a -k -r -s -sfx -z”N:\deploy\DeployTools\winrarPath.ini” N:\deploy\ccms.exe ccms DB
::start N:\deploy
::打开teamview准备上传
“C:\Program Files (x86)\TeamViewer\Version9\teamviewer.exe” -i aa –Password bbbb -m fileTransfer
winrarPath.ini文件:
Path=E:\IISROOT\
Overwrite=1
SQL Server 2012引入了包含数据库,将登录账号,工作代理,环境打包到一个db里,这样在做迁移的时候就不会丢失。
限制是:
部分包含数据库不能使用复制、更改数据捕获或更改跟踪。
编号过程
绑定到架构的对象,且依赖于可更改排序规则的内置功能
绑定因排序规则更改而导致的变化,包括对对象、列、符号或类型的引用。
复制、变更数据捕获和更改跟踪。
配置方法见: SQL Server 2012中包含的数据库(Contained Database)探索
http://blog.csdn.net/burgess_liu/article/details/7477470
1,下载包含ssl的curl: 地址:http://www.confusedbycode.com/curl/
2,json数据注意两点:1)用3个引号替换1个引号(因为cmd为自动去掉引号) 2)项与数据之间不要有空格
格式:
curl -X POST https://enjoyasp.net -d {“””api_key”””:”””4c38d5a2d564d52a1390d2e9fce88ea1″””,”””data”””:{“””item”””:[{“””text”””:”””This is a new message”””,”””type”””:0}]}} -H “Content-Type:application/json” -k
3,curl使用方法:http://www.ruanyifeng.com/blog/2011/09/curl.html
想用sqlserver发短信,做法是做一CLR打到sqlserver中,感觉有些硬,可以用xp_cmdshell+wget来实现。
wget下载:http://www.interlog.com/~tcharron/wgetwin.html
应用:
1,下载网站或文件,支持断点续传
2,get url,比如上面的短信调用或者测试网站是否可以访问,或不能发送短信。
3,post数据。
—————————–SSAS————————————-
1,用ssas生成多维度,然后利用excel的data功能可以自组各种维度的报表
2,可设置是否可见,在维度结构 子项-属性-AttributeHierarchyVisible=false
在维度结构 -属性-AttributeMemberName=myname
3,先增加维度,再在此基础上增加多维数据集.多维数据集用来对多个维度指定聚合方式,求和或者计数或者其它.
多维数据集提前聚合生成一次聚合数据,与sqlserver db分开,不用每次再进行数据查询,而关系数据库是每次都要聚合,性能很低
并且建立维度后,大家可共用,防止自己写sql不同的结果
4,多维数据集启用excel,也查以使用excel连接多维数据表
5,加载数据是在sqlserver 维度右键处理进行数据的加载或studiio中点击处理,
或者在多维数据集中的分区页设置更新时间,或者用ssis建立一个analysis services处理任务,用job来定时刷新
BI笔记之—Cube增量处理的一个场景的处理方案
6,Tableau不错,不过服务端收费
7,在多维数据集中的透视中可对度量值进行分组,然后给不同的用户看
8,kimball university:the 10 essential rules of dimensional modeling
9,权限:关系型数据库用视图,分角色
cube:建立多个角色 SQL Server分析服务的权限配置 http://www.cnblogs.com/aspnetx/p/3703335.html
—————————–SSIS——————————-
分区.用switch可以转到其他服务器上,这不费时间,很快
复制-并行数据仓库系统-大数据 规模
并行数据仓库pDw,可让数据库分到多个服务器上 Teradata做的最好
1,lession2:循环文件,连接管理器中的连接属性expression的constring用变量
2,日志事件一般选择onerror on warning,onpostexcute,ontaskfailed
若使用sqlserver记录日志,日志表为sysssislog
3,包部署模型:配置,增加变量,转换为包部署模型,ssis-包配置
好处:统一的日志管理,集中处理,有缓存,速度快
4,资源管理器打开文件夹,bin下面有个ispac文件,可以用来做部署
大表做分区,放到不同的filegroup中,表建立时启用页yasuo,能压缩一半以上,读快,不过写慢一些,用在很少更新的大表上
,然后到一定量时做switchr
alter table sss switch to eee
自己做:动态生成job,动态生成包,完全.net写取数据
解决并行问题,写sql是硬编码,并且不能并发,动态生成job就能解决这个问题
sqlserver到来60t时单台db会到pingjing
//*部署到服务器上*//
1,将SSIS的项目属性-通用属性-项目中的ProtectionLevel修改为用户加密
2,包的属性也做以上修改
3,重新生成后将bin下的ispac文件copy到服务器上
4,服务器连接到数据库引擎在Integration services目录下添加项目及文件夹,然后部署找到ispac文件,录入密码即可。
—————————–SSRS————————————–
列存储,对表进行分区,更新时只要drop对应分区即可,不用drop掉整个表
PowerView制作动态图表,PowerView已经可以成为一个强大的BI工具,可以做出功能非常丰富的动态交互图表甚至DashBoard
BISM是一种更加轻量级的模型,它不像CUBE那样复杂,建立的周期和其相比也要短得多,也不需要使用复杂的MDX语句(但也支持MDX),BISM支持使用DAX进行查询,总而言之,BISM是一个更加简单的能够快速提供给业务人员使用
PowerPivot:大数据级的excel,解决大数据量的存储问题
数据量在1000万以内用ssis,以上ETL层自定义框架
前端利用第三方组件自行开发
优点,ETL和UI自己开发
1,sqlserver解决方案 ssdt:sqlserver data tools
好处:每次发布的脚本是动态生成的,可以多次发布,即使中间出错,下次也会从新的开始
2,发布-高级可以设置选项
表-属性: 生成操作. 无指不参与生成,也不会部署
3,添加-脚本
后期部署脚本,指在生成脚本后执行
预先部署脚本,指在生成脚本前执行
4,已有数据库,生成源码操作
右键sqlserver项目,导入-数据库
5,真正发布时,会用脚本来执行,命令行执行sqlpackage
可以点生成,资源管理器打开,在bin下有一个dac文件,可用sqlpackage.exe来调用这个文件来部署
这种部署是最佳实践,因为可以部署到多台服务器上,并且可以版本控制,可对checkin的脚本进行发布
redgate是用事务的,会锁住对象,并且不能插入脚本
在项目中生成文件后,将dac文件copy出来,用sqlpackage.exe发布,在进行发布时会自动比较生成脚本
如:
@echo off
set sqlpackage=”C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\SqlPackage.exe”
%sqlpackage% /Action:Publish /SourceFile:E:\mydb\bin\Debug\BRM.sqlproj.dacpac /Profile:E:\Db.publish.xml
6,调用脚本
:r .\Script.sql
script.sql是用添加-脚本-不在内部版本中类型的脚本
7,对于有复制分发的数据库,可以在发布-高级里面指定不更改复制对象
做法是:在其中一台db中指定更改复制对象,其他DB不更改
在用ImageButton时,前台生成的控件会自动带上element.style{border-width:0px} 影响其他样式。
这个是ASP.NET的一个Bug,需要实现自己的类解决
using System;
using System.Web.UI.WebControls;
public class BorderlessImageButton : ImageButton {
public override Unit BorderWidth {
get {
if (base.BorderWidth.IsEmpty) return Unit.Pixel(0);
else return base.BorderWidth;
}
set {
base.BorderWidth = value;
}
}
}
然后不使用ImageButton,而是使用BorderlessImageButton
或者直接在web.config增加映射关系。
tagMapping>
pages>
system.web>
参考:Remove border-width:0px from asp:Image or asp:ImageButton
http://weblogs.asp.net/reganschroder/remove-border-width-0px-from-asp-image-or-asp-imagebutton
链接服务器配置简答,操作方便,是进行数据处理很有用的工具。
但若在存储过程中使用了链接服务器,就要注意:
若链接服务器挂了,则对应的存储过程在执行时都会阻塞,阻塞时间就是链接服务器的超时时间,会影响系统的使用。
所以使用链接服务器的场合是:
1,涉及到链接服务器的存储过程独立,不与其他逻辑混在一起,sp短小精悍
2,设置链接服务器的超时时间,若在局域网内,设置成6s超时就够用。
RESTORE除了还原数据库外 ,还能带如下参数查看备份文件的信息 --备份集中包含的一组数据库和日志文件,mdf,ldf文件大小 RESTORE FILELISTONLY FROM DISK='E:\DB\DBBACK\mydb.bak' --特定备份设备上所有备份集的所有备份标头信息,如备份开始时间与结束时间 RESTORE HEADERONLY FROM DISK='E:\DB\DBBACK\mydb.bak' --备份设备标识的备份介质的信息 RESTORE LABELONLY FROM DISK='E:\DB\DBBACK\mydb.bak' --验证备份是否有效 RESTORVERIFYONLYLY FROM DISK='E:\DB\DBBACK\mydb.bak' 参考 :RESTORE 参数 http://msdn .microsoft. com/zh -cn/ library/ms178615 .aspx
遇到一个需求,替换某目录下每个文件中指定的多个字符串,用powershell解决
$fileList = Get-ChildItem 'N:\ps\ClassLibrary\' -recurse *.cs | %{$_.FullName} Foreach($file in $fileList) { (Get-Content $file) | Foreach-Object { $_ -replace 'bdOrderinfo_save','Orderinfo_save'-replace bdOrderinfo_sel','Orderinfo_sel' } | Out-File $file }
上ngix做负载均衡,ngix可以据IP固定一台服务器访问,这样可解决session共享问题,不过,还是单独一台服务器存session好一些,可以放到缓存或者服务中。
1,在web.config中配置:
2,在指定服务器172.16.88.88中开启远程访问
vs2012已经提供了发布功能,可以直接ftp上传,但ftp上传是对每个文件上传,若网速比较慢,就时间比较长。这里提供命令行发布,然后进行压缩操作。
@echo off set fdir=%WINDIR%\Microsoft.NET\Framework64 if not exist %fdir% ( set fdir=%WINDIR%\Microsoft.NET\Framework ) set msbuild=%fdir%\v4.0.30319\msbuild.exe %msbuild% website.publishproj /p:DeployOnBuild=true /p:PublishProfile=.\App_Data\PublishProfiles\发布.pubxml /p:VisualStudioVersion=11.0 /p:OutputPath=M:\deploy rd /s /q M:\deploy\images rd /s /q M:\deploy\Files del M:\deploy\web.config del M:\deploy\login.aspx rename M:\deploy\login3.aspx login.aspx "C:\Program Files\WinRAR\rar.exe" a -ag -k -r -s -ibck M:\s6release\s6_.rar M:\deploy start M:\s6release
winrar.exe:运行winrar,
如果winrar.exe没在默认路径中则需要指明路径,如c:\Progra~1\winrar\winrar.exe …;
a :备份所有文件;
-ag :当创建压缩文件时,以格式“YYYYMMDDHHMMSS”附加当前日期字符串,文件名bakYYYYMMDDHHMMSS.rar;
-k :锁定压缩文件;
-r:备份目录和子目录;
-s :创建固实压缩文件;
-ibck :后台运行;
M:\s6release\s6_.rar :备份的路径和基本名称(-ag参数会自动在bak后加上系统当前时间),
也可不用-ag参数,通过“%date:~0,4%%date:~5,2%%date:~8,2%”取得时间字串,
也可写作c:\bak.zip;
M:\deploy :要备份的文件目录。
1,配置ini文件,即是手工安装中上一步下一步中做的设置
ini文件关键点说明:
SQLSYSADMINACCOUNTS=".\Administrator"指明了使用当前机器的计算机名,这样就不会因为第一台机器的计算机名复制到其他机器里
FEATURES=SQLENGINE,REPL…:指定要安装、卸载或升级的功能。
2,执行cmd命令安装
/SAPWD:指定sa的密码
3,安装补丁
补丁.exe /allinstances /qs /IACCEPTSQLSERVERLICENSETERMS
参考:您还在用下一步下一步的方式安装SQLSERVER和SQLSERVER补丁吗?
4,ini文件如下
;SQL Server 2012 Configuration File ;安装到D盘,不安装report services,ssis等不用的功能 [OPTIONS] ; 指定安装程序的工作流,如 INSTALL、UNINSTALL 或 UPGRADE。这是必需的参数。 ACTION="Install" ; 尚未定义命令行参数 ENU 的详细帮助。 ENU="False" ; 用于控制用户界面行为的参数。有效值对于完整 UI 为 Normal,对于简化的 UI 为 AutoAdvance,为 EnableUIOnServerCore 则跳过 Server Core 安装程序 GUI 块。 ;UIMODE="Normal" ; 安装程序将不会显示任何用户界面。 QUIET="False" ; 安装程序将只显示进度,而不需要任何用户交互。 QUIETSIMPLE="False" ; 指定 SQL Server 安装程序是否应发现和包括产品更新。有效值是 True 和 False 或者 1 和 0。默认情况下,SQL Server 安装程序将包括找到的更新。 UpdateEnabled="False" ; 指定要安装、卸载或升级的功能。顶级功能列表包括 SQL、AS、RS、IS、MDS 和工具。SQL 功能将安装数据库引擎、复制、全文和 Data Quality Services (DQS)服务器。工具功能将安装管理工具、联机丛书组件、SQL Server Data Tools 和其他共享组件。 FEATURES=SQLENGINE,REPLICATION,FULLTEXT,DQ,DQC,CONN,BC,SDK,BOL,SSMS,ADV_SSMS,DREPLAY_CTLR,DREPLAY_CLT,SNAC_SDK,MDS ; 指定 SQL Server 安装程序将获取产品更新的位置。有效值为 "MU" (以便搜索产品更新)、有效文件夹路径以及 .\MyUpdates 或 UNC 共享目录之类的相对路径。默认情况下,SQL Server 安装程序将通过 Window Server Update Services 搜索 Microsoft Update 或 Windows Update 服务。 UpdateSource="MU" ; 显示命令行参数用法 HELP="False" ; 指定应将详细的安装程序日志传送到控制台。 INDICATEPROGRESS="False" ; 指定安装程序应该安装到 WOW64 中。IA64 或 32 位系统不支持此命令行参数。 X86="False" ; 指定共享组件的安装根目录。在已安装共享组件后,此目录保持不变。 INSTALLSHAREDDIR="d:\Program Files\Microsoft SQL Server" ; 指定 WOW64 共享组件的安装根目录。在已安装 WOW64 共享组件后,此目录保持不变。 INSTALLSHAREDWOWDIR="d:\Program Files (x86)\Microsoft SQL Server" ; 指定默认实例或命名实例。MSSQLSERVER 是非 Express 版本的默认实例,SQLExpress 则是 Express 版本的默认实例。在安装 SQL Server 数据库引擎(SQL)、Analysis Services (AS)或 Reporting Services (RS)时,此参数是必需的。 INSTANCENAME="MSSQLSERVER" ; 为您已指定的 SQL Server 功能指定实例 ID。SQL Server 目录结构、注册表结构和服务名称将包含 SQL Server 实例的实例 ID。 INSTANCEID="MSSQLSERVER" ; 指定可以收集 SQL Server 功能使用情况数据,并将数据发送到 Microsoft。指定 1 或 True 将启用此功能,指定 0 或 False 将禁用此功能。 SQMREPORTING="False" ; 用于授予分布式重播控制器服务权限的 Windows 帐户。 CTLRUSERS=".\Administrator" ; 分布式重播控制器服务使用的帐户。 CTLRSVCACCOUNT="NT Service\SQL Server Distributed Replay Controller" ; 分布式重播控制器服务的启动类型。 CTLRSTARTUPTYPE="Manual" ; 分布式重播客户端服务使用的帐户。 CLTSVCACCOUNT="NT Service\SQL Server Distributed Replay Client" ; 分布式重播客户端服务的启动类型。 CLTSTARTUPTYPE="Manual" ; 分布式重播客户端服务的结果目录。 CLTRESULTDIR="d:\Program Files (x86)\Microsoft SQL Server\DReplayClient\ResultDir" ; 分布式重播客户端服务的工作目录。 CLTWORKINGDIR="d:\Program Files (x86)\Microsoft SQL Server\DReplayClient\WorkingDir" ; 指定是否可将错误报告给 Microsoft 以便改进以后的 SQL Server 版本。指定 1 或 True 将启用此功能,指定 0 或 False 将禁用此功能。 ERRORREPORTING="False" ; 指定安装目录。 INSTANCEDIR="d:\Program Files\Microsoft SQL Server" ; 代理帐户名 AGTSVCACCOUNT="NT Service\SQLSERVERAGENT" ; 安装后自动启动服务。 AGTSVCSTARTUPTYPE="Automatic" ; CM 程序块 TCP 通信端口 COMMFABRICPORT="0" ; 矩阵如何使用专用网络 COMMFABRICNETWORKLEVEL="0" ; 如何保护程序块间的通信 COMMFABRICENCRYPTION="0" ; CM 程序块使用的 TCP 端口 MATRIXCMBRICKCOMMPORT="0" ; SQL Server 服务的启动类型。 SQLSVCSTARTUPTYPE="Automatic" ; 启用 FILESTREAM 功能的级别(0、1、2 或 3)。 FILESTREAMLEVEL="0" ; 设置为 "1" 可为 SQL Server Express 启用 RANU。 ENABLERANU="False" ; 指定要用于数据库引擎的 Windows 排序规则或 SQL 排序规则。 SQLCOLLATION="Chinese_PRC_CI_AS" ; SQL Server 服务的帐户: 域\用户或系统帐户。 SQLSVCACCOUNT="NT Service\MSSQLSERVER" ; 要设置为 SQL Server 系统管理员的 Windows 帐户。 SQLSYSADMINACCOUNTS=".\Administrator" ; 默认值为 Windows 身份验证。使用 "SQL" 表示采用混合模式身份验证。 SECURITYMODE="SQL" ; 将当前用户设置为 SQL Server 2012 Express 的数据库引擎系统管理员。 ADDCURRENTUSERASSQLADMIN="False" ; 指定 0 禁用 TCP/IP 协议,指定 1 则启用该协议。 TCPENABLED="1" ; 指定 0 禁用 Named Pipes 协议,指定 1 则启用该协议。 NPENABLED="0" ; Browser 服务的启动类型。 BROWSERSVCSTARTUPTYPE="Disabled" ; 添加输入参数 FTSVCACCOUNT 的描述 FTSVCACCOUNT="NT Service\MSSQLFDLauncher"
0,优势:可在查询编辑器下引用变量,执行cmd命令 1,查询编辑器开启sqlcmd:在“查询”菜单中,单击“SQLCMD 模式” 2,编写脚本 :setvar table "person" SELECT * FROM [$(table)] !!DIR GO
第二章
restful:表现层状态传输
1,返回的结果格式由客户端的Content-Type指定,即表现多变
2,对应的方法是get,post.GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源。
3,mvc webapi对应:建立的方法由[[HttpPost]]指定关联
引用:理解RESTful架构 ASP.NET Web API(一):使用初探,GET和POST数据
控制ASP.NET Web API 调用频率
ASP.NET Web API 接口执行时间监控
可以用chrome提供的插件来进行构造测试
Postman – REST Client