微软发布了 SQL Server 2017。这是 SQL Server 历史上首次同时发布 Windows 和 Linux 版,微软还同时发布了能使用 Docker 部署的容器版本。微软是在去年 3 月首次对外宣布了 Linux 版的 SQL Server。将 SQL Server 带到 Linux 平台潜在会影响 Windows Server 市场份额,但微软云端和企业业务执行副总裁 Scott Guthrie 认为,机遇大于风险,许多客户都对 SQL Server 表达过浓厚兴趣,但他们使用的是 Linux 或容器,只支持 Windows 将使得 SQL Server 无法提供给这些客户。SQL Server 2017 的核心功能在 Windows 和 Linux 上保持一致,但有少部分依赖于 Windows 功能的特性没有提供给 Linux。
Tag Archive: windows
windows server 2008 x64位的操作系统,IIS7.5(Internet Information Services 7.5)中指向对应的网站文件夹目录之后,浏览网站,出现的问题:
1、连接Access数据库,打开数据库的时候,报错:“数据库连接错误,请检查连接字符串!错误描述为:验证失败。”
确定程序没错!数据库路径没错!
解决办法:
IIS–应用程序池–右边的“DefaultAppPool”–右键:设置应用程序池默认设置–启用32位应用程序–设置为:TRUE,如下图:
2、出现500内部服务器错误或英文提示:
例一:An error occurred on the server when processing the URL. Please contact the system administrator
例二:“500 – 内部服务器错误。 您查找的资源存在问题,因而无法显示。”
方法:
A:点击左侧网站名称,右侧IIS下方第一个图标“ASP”,双击,编译下方第一个“调试属性”,双击,“将错误发送到浏览器”设置为true。然后点击右边的“应用”进行保存。
B:还是上面的对话框,下面双击“行为”目录,下方有个“启用父路径”,设置为true,然后点击右边的“应用”进行保存。
C:点击左侧网站名称,右侧IIS下方有个“错误页”的图标,双击,单击“500”那一行,然后点击右侧的“编辑功能设置”,把错误响应设置为第二个“详细信息”
如何看到asp正常的报错详细:
点击总的IIS
找到错误页面选项
选中500-点击右边的编辑功能设置
-将错误响应改为详细错误的状态。
通过以上设置后,再从浏览时打开出错ASP页面时就能看到页面出错的详细信息,方使调试。如果是公开的Web服务器建议不要打开此选项,以防出错信息被他人利用。
3、设置404错误页面:
在IIS7.5下设置404错误的时候一直都提示失败
后来发现需要在“编辑功能设置”里面给打开该功能。
然后在选择:
这样设置即可完成。但是,在这一步,有时候会出现这样的提示:锁定冲突。这里,在下面“默认页”,路径这里不需要填写;路径类型这里选择“文件”,然后点击“确定”按钮即可。
4、这个时候,在打开内页的时候,还会提示500错误,比如这种页面“http://www.xxx.com/ShowArticle.asp?ArticleID=2755”。这个很有可能是数据库没有写的权限,这就需要对Access数据库文件或者数据库文件所在的目录进行安全权限设置。右键/属性/安全/编辑/Users,下面权限设置那里,把“修改”的权限加上即可。
【一般默认的文件夹有这么几个用户可以访问:】
CREATOR OWNER:特殊权限;
SYSTEM:完全控制;
ADMINISTROTORS:完全控制+特殊权限;
USERS:读取和执行;列出文件夹内容;读取;特殊权限。
5、出现500错误,IIS里面设置了把错误信息发送到浏览器,也设置了500、404错误显示为详细信息,但是还出错还是只显示500错误,原来是本地浏览器设置的问题,需要打开INTERNET选项/高级/,把“显示友好的http错误信息”前面的勾去掉即可。
6、还有一个问题,动易siteweaver 6.8的系统转移服务器之后,重新生成首页,出现这个代码“Request 对象 错误 ‘ASP 0104 : 80004005’ 不允许操作 XXX/..\start.ap”。解决办法如下,最主要的是把IIS里面,ASP选项里有个限制属性,把最大请求实体主机限制改大一些即可,因为代码的内容超出了服务器设置的大小。
请求对象错误 ‘asp教程 0104 : 80004005′
症状
上传文件到 windows server + iis 6.0或者iis7.0 服务器的时候遇到下列错误:
请求对象错误 ‘asp 0104 : 80004005′
操作被禁止
原因
iis6.0 和iis7禁止上传超过 200kb 的文件. 因此你需要修改 iis 的默认设置。
当然此200k限制仅限无组件上传,如果使用aspupload等上传时不会有此限制。
解决方法
iis6
首先停止 iis 服务,之后打开 c:windowssystem32inetsrv 中的 metabase.xml, 并修改 aspmaxrequestentityallowed 为你需要的值(例如 1073741824, 1gb)。启动iis服务。
若你想在iis运行的时候修改其配置文件,则打开iis管理器,打开internet信息服务属性面板,钩选”允许直接编辑配置数据库教程,允许在iis运行时编辑iis配置数据库配置文件”
iis7
启动internet 信息服务(iis)管理器,选中要修改的站点,选择asp图标,在限制属性里面找到最大请求实体主机限制,改为你所需要的值。
技术背景
在 iis 6.0 中, aspmaxrequestentityallowed 属性指定了一个 asp 请求(request)可以使用的最大字节数. 如果 content-length 头信息中包含的请求长度超过了 aspmaxrequestentityallowed 的值, iis 将返回一个 403 错误信息.
这个属性值与 maxrequestentityallowed 相似, 但是是针对 asp 请求的. 假如你知道自己的 asp 应用只需要处理很少的请求数据, 你可以在 world wide web publishing service (www 发布服务)层级设定全局的 maxrequestentityallowed 属性为 1mb, 并单独设定 aspmaxrequestentityallowed 为一个较小的值.
request 对象 错误 ‘asp 0104 : 80004005’
不允许操作
分析:
从提示的错误中可以知道是由于 request 引起的 说明发送的数据对错了
突然想到 win2003 iis6 默认接收的数据是200kb 可能是post数据超过了200kb
解决办法:
一、打开iis在 本地计算机上查看属性如下图:
选中 允许直接编辑配置数据库
二、用计事本打开 c:windowssystem32inetsrv 中的 metabase.xml
找到 aspmaxrequestentityallowed=”204800″
把后面的 204800 改一个大点的数值
然后保存。
看一下动易的错 误 号:-2147467259
错误描述:request 对象错误 ‘asp 0104 : 80004005’不允许操作~
错误来源:request 对象
windows2003系统下,上传较大的文件时,出现”request 对象 错误 ‘asp 0104 : 80004005′”错误。
更改win2003的iis 6.0对asp的上传文件大小为200k限制,aspx 的上传程序没有影响。在iis6.0中,默认设置是特别严格和安全的,最大只能传送 204,800 个字节,这样可以最大限度地减少因以前太宽松的超时和限制而造成的攻击。iis 6 出于安全考虑, 默认最大请求是200k(也即最大提交数据限额为200kbyte,204800byte)。(在 iis 6.0 之前的版本中无此限制)
解决方案
第一步:修改iis设置,允许直接编辑配置数据库。先打开,internet信息服务,
第二步:先在服务里关闭iis admin service服务,找到windowssystem32inesrv下的metabase.xml, 打开,找到aspmaxrequestentityallowed 把他修改为需要的值,默认为204800,即200k,如把它修改为51200000(50m)。
然后重启iis admin service服务
默认情况下安卓应用程序.apk文件IIS服务器是不支持的,需要在IIS中的MIME类型中添加.apk的支持,方法如下:
只需要在IIS的MIME类型中添加扩展名为.apk,MIME类型为application/vnd.android.
详细步骤:
IIS管理器>>sites>>MIME Types>>add,如下图:
确定后即可!
虚拟主机,若为独立IP用户,可以通过独立IP单独访问网站,相比共享IP这就是优势;同样,这也存在一个弊端:恶意解析问题.
对于恶意解析问题,最简单的处理方式是”禁止独立IP访问”.
我们也讨论过,对于linux虚拟主机操作起来比较麻烦,而window虚拟主机就非常简单了!
那具体如何禁止windows虚拟主机独立IP访问网站呢?
详细操作如下:
IIS manager(IIS管理器) >> site(网站) >>查找你需要设置的域名>>bindings sites(绑定网站)
去除”空host name(主机名)”的条目即可!
这样就只能通过域名访问网站,而不能通过独立IP来访问你的网站了!!
远程服务器断开连接,为什么总自动关闭打开的程序
系统故障:远程桌面断开时不久,系统就会自动注销(一办都认为原先打开的程序自动关闭)。即:远程桌面断开时,当前运行的软件会自动关闭,正在运行的其它程序也没有了。再用帐户远程登录,发现是一个全新的桌面。
解决办法:
开始–>运行–>gpedit.msc
计算机配置->管理模板->Windows组件->终端服务->会话
把”为断开的会话设置时间限制”改为”未被配置”。
如果通过上面的操作,还会出现远程桌面连接断开过段时间之后,运行的软件自动关闭的话,就再进行以下操作:
开始–>运行–>tscc.msc
连接–>RDP-Tcp右键属性–>会话
把这里面的替代用户设置的设置都改为从不,并且把从不勾选。
需要说明的是:前述工作做完后,如果远程服务器还是问题依旧,接下来:
取消开机按ctl+alt+del
开始–>所有程序–> 管理工具–>本地安全策略–>本地策略–>安全选项:microsoft网络服务器:当登录时间用完后自动注销用户,改为“已禁用”。
microsoft网络服务器:在挂起会话之前所需的空闲时间,改为99999,实际上是禁止了此策略。
最后,如果可能,到服务器上用administrator登录一次。
关键的一步:当您登录远程服务器后,在退出的过程中,不要直接点击远程桌面程序的那个“×”,而是在远程服务器的桌面上,点“开始--关机--断开”,
nagios默认没有监控windows网卡流量的插件,但是可以通过第三方的插件脚本实现。
1:下载check_traffic.sh脚本,上传至Nagios监控服务器的/usr/local/nagios/libexec目录下。
官方下载地址:https://github.com/cloved/check_traffic
2:为check_traffic.sh赋执行权限:
#chmod a+x /usr/local/nagios/libexec/check_traffic.sh
3:修改nagios命令脚本,添加网卡监控命令。
1
2
3
4
5
|
# vi /usr/local/nagios/etc/objects/command.cfg define command { command_name check_Interface command_line $USER1$ /check_traffic .sh -V $ARG1$ -C $ARG2$ -H $ARG3$ -I $ARG4$ -w $ARG5$ -c $ARG6$ -K -B } |
注:-V为snmp版本,-C为snmp组名,-H为主机,-I为网卡编号。网卡编号可以用以下命令获取:
1
|
# /usr/local/nagios/libexec/check_traffic.sh -V 2c -C cmh -H 182.118.46.69 -L |
4:编辑监控服务文件,添加网卡监控服务:
1
2
3
4
5
6
7
8
9
|
# vi /usr/local/nagios/etc/objects/localhost.cfg define service{ use linux-service ; Name of service template to use host_name 116.255.220.76 service_description Interface_traffic_media_69 check_command check_Interface!2c!cmh!182.118.46.69!11!23000,23000!25000,25000 normal_check_interval 3 notifications_enabled 1 } |
5:查看监控页面,效果如下:
1.下载解压
下载地址:http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.14-winx64.zip
将下载的mysql解压重命名放在C:\Program Files\MySQL\MySQL Server 5.7”
2.创建目录
创建数据文件和日志文件存放目录:D:\MySQL\Data;D:\MySQL\Log
3.创建my.ini
在C盘根目录下创建my.ini文件(注意隐藏的文件后缀名),内容如下(只列出安装的一些需要的配置):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
[client] no-beep socket =0.0 port=3306 [mysqld] server- id =45 port=3306 character- set -server=utf8mb4 pid- file = "mysql.pid" socket =0.0 basedir= "C:\Program Files\MySQL\MySQL Server 5.7" datadir= "D:/MySQL/Data" tmpdir= "D:/MySQL/Data" default-storage-engine=INNODB #####==========================================================================[log]================================================================================ slow-query-log=1 long_query_time=1 slow_query_log_file= "D:/MySQL/Log/mysql-slow.log" ##log-bin="D:/MySQL/Log/mysql-bin" log-error= "D:/MySQL/Log/mysql-error.log" |
4.初始化安装
进入cmd命令界面,切换到”cd C:\Program Files\MySQL\MySQL Server 5.7\bin”
5.配置环境变量
在环境变量中加入
C:\Program Files\MySQL\MySQL Server 5.7\bin
6.添加mysql服务
增加服务 mysqld install MySQL –defaults-file=”C:\my.ini”
移除服务 mysqld remove
注意:这里的“MySQL”是设的服务名
7.启动关闭mysql
启动 net start mysql
关闭net stop mysql
8.登入mysql
1).如果安装方式使用的是-initialize-insecure,在安装的过程中会生成一个root用户密码
2).如果使用–initialize方式安装,在mysql -u root -p 登入时在错误日志文件中会生成一个root用户密码(我这里就是采取第二种安装方法)
9.修改用户密码
SET password=PASSWORD(”);
或者
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘new_password’;
!
有很多人在装sql server的时候,稍有不慎就安装失败。sql server 2008应该是用的比较多的,很多人都遇到了安装失败的问题,什么原因造成的呢?
如图:安装失败都是因为以前的老版本未卸载干净造成的!
怎么解决?
1、停止所有跟Sql相关的服务:控制面板-〉管理工具-〉服务
2、在控制面板中卸载所有和SQL有关的一切程序或者组建
3、注册表清理():
3.1彻底删除SQL Server:
hkey_local_machine\software\microsoft\MSSQLServer hkey_local_machine\software\Microsoft\Microsoft SQL Server hkey_current_user\software\Microsoft\Microsoft SQL Server hkey_current_user\software\Microsoft\MSSQLServer hkey_local_machine\system\currentcontrolset\control\sessionmanager\pendingfileren ameoperations
3.2注册表中的相关信息删除:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSDTC。
3.3 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到PendingFileRenameOperations项目,并删除它。这样就可以清除安装暂挂项目
3.4 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\setup
删除ExceptionComponents
3.5运行注册表,删除如下项:
HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer




微软 //Build 2016 开发者大会在美国旧金山莫斯康展览中心拉开帷幕。
在本次大会上宣布,微软与 Ubuntu 的母公司 Canonical 合作开发了一个超级隐秘的项目,将 Ubuntu 的用户空间带到了 Windows 10 之中。 据大会现场消息披露,你现在可以在 Windows 10 中直接运行 Linux 下的 bash 以及其它的数万个二进制程序了。
正在旧金山参加本次大会的 Canonical 的 Ubuntu 产品与战略负责人 Dustin Kirkland 也在其博客上宣布了这个消息。
“这对于我来说也许有点奇怪,我已经快有16年没有使用 Windows 了。但在几个月前有了变化,我参与到了微软和 Canonical 合作的一个超级隐秘(也十分令人震惊)的项目中,这一切会在这次 Build 大会上由 Kevin Gallo 揭晓…”,他说,“现在可以在 Windows 10 cmd.exe 窗口内原生地运行 Ubuntu 用户空间和 bash !”
“好吧,这是一个运行在虚拟机的 Ubuntu 吗?” 不!这根本不是一个虚拟机,没有一个运行在 hypervisor 中的 Linux 内核启动过程,而是 Ubuntu 用户空间。
“哦,那是运行在容器里面啰?” 不不!这也不是一个容器,这是在 Windows 里面原生地运行 Ubuntu 二进制程序。
“嗯,就像 cygwin 那样?”不不不!cygwin 所包括的开源程序是以源代码重新编译后才能原生运行在 Windows 上。而这里,我们说的是一个比特都不差、校验值完全一样的 Ubuntu 的 ELF 二进制程序可以直接运行在 Windows 下!
“那么,这就像是模拟器一样么?”越来越接近真相了,来自微软的一些技术人员正在研究一种技术,将 Linux 的系统调用实时地转换为 Windows 的系统调用。你可以把它当成 Wine 的一种反向技术。微软将其称之为“Windows 下的 Linux 子系统”,当然现在还没有开源。
如果你使用 Windows 10 来开发跨平台应用,那么“Ubuntu on Windows”项目将可以让你从 Windows 启动菜单直接访问 Linux 下的 bash shell。只需要键入 bash ,然后回车,就会打开一个命令行窗口,里面运行着 /bin/bash,然后数以万计的来自 Ubuntu 软件库中的二进制程序就可以运行了,包括但不限于 apt、ssh、 rsync、 find、 grep、 vim、 emacs、 awk、 sed、 ruby、 tar、 sort、php、 mysql、 perl、 python、 wget、 md5sum、 gpg、 curl、 apache、 gcc、 diff、patch 等等。
“这是 Windows 上原生可用的完整 Ubuntu 环境,不是虚拟化或模拟器,这是打破常识的里程碑和通向新天地的里程碑,”Canonical 公司 CEO Mark Shuttleworth 说,“不管怎么说,我们很高兴将 Ubuntu 带到了 Windows ,以一种神奇的方式满足了 Windows 开发者探索 Linux 的需要。”
这个技术当前基于 Ubuntu 14.04 LTS 开发,可以从 Windows Store 中下载早期 beta 版本。有关该项目的进一步技术细节,我们会在之后的文章中进行探讨。