我已经使用ssas部署向导生成了xmla json。json的开头是这样的
{"sequence": {"operations": [{
"createOrReplace": {
"object": {
"database": "devopstest"
},
"database": {
"name": "devops test",
"compatibilityLevel": 1400,
"model": {
"culture": "en-US",
"dataSources": [
...但是,当我尝试通过Invoke-ASCmd -ConnectionString $constr -InputFile $inputFilePath -Server $server -ServicePrincipal部署它时,我得到了以下错误
Either the user, '<pii>useraccount</pii>', does not have access to the 'devops test' database, or the database does not exist.正如错误所指出的,数据库并不存在,但是不应该创建它吗?此xmla json是由部署向导通过UI和CLI生成的。我首先尝试通过CLI进行部署,并获得了相同的结果。如果我通过SSAS部署向导UI运行模型,则会创建数据库。那么,为什么当我通过相同exe的命令行界面或通过Invoke-ASCmd运行相同的模型时,它不会创建数据库。
发布于 2019-11-18 22:01:08
所以我找到了我的问题所在。我的deploymenttargets文件中的连接字符串设置了一个初始目录值。如果目标服务器上不存在此数据库,则使用Invoke-AScmd和SSAS部署向导命令行界面的部署将失败。但是,使用SSAS部署向导GUI将会成功。因此,我猜测造成混淆的原因是同一应用程序的不同行为,这取决于它是通过CLI还是GUI调用的。
https://stackoverflow.com/questions/58868875
复制相似问题