sqlserver创建发布分发服务器时提示目录无效的解决办法

错误详情:
SQL Server 无法将“xx”配置为分发服务器。

其他信息:
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)

目标路径 D:MSSQLDATA 无效。无法列出目录内容。请指定有效的目标路径。
已将数据库上下文更改为 'master'。 (Microsoft SQL Server,错误: 14430)

有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600&EvtSrc=MSSQLServer&EvtID=14430&LinkId=20476

尝试修改文件夹权限,未果。

解决方法:

打开sqlserver配置管理器,查看启动sqlserver的账户应该是NetWorkService修改成LocalSystem最高权限即可。
修改后,会自动重启sqlserver服务。具体操作见图

修改sqlserver服务启动账户

方法一

报错提示一般是多了个空格,将新加的配置多余空格删除即可。

方法二

若配置文件确实没问题,可能conf文件被记事本编辑过,保存成了含[BOM] 。所以才报错的。

解决办法
使用editplus 等其它非记事本 另存为 UTF-8 不含BOM 的文件就可以了。

nginx unknown directive

nginx在反向代理HTTP协议的时候,默认使用的是HTTP1.0去向后端服务器获取响应的内容后在返回给客户端。
HTTP1.0和HTTP1.1的一个不同之处就是,HTTP1.0不支持HTTP keep-alive。nginx在后端服务器请求时使用了HTTP1.0同时使用HTTP Header的Connection:Close通知后端服务器主动关闭连接。这样会导致任何一个客户端的请求都在后端服务器上产生了一个TIME-WAIT状态的连接。所以我们需要在Nginx上启用HTTP1.1的向后端发送请求,同时支持Keep-alive。

配置方法

我们增加三个参数keepalive 50,proxy_http_version 1.1 , proxy_set_header Connection 来配置。
upstream http_backend {

server 127.0.0.1:8080;
keepalive 50;

}
server {

...
location /http/ {
    proxy_pass http://http_backend;
    proxy_http_version 1.1;
    proxy_set_header Connection "";
    ...
}

}

免责声明
本博客部分内容来自于互联网,不代表作者的观点和立场,如若侵犯到您的权益,请联系[email protected]。我们会在24小时内进行删除。