A Microsoft distribui as correções do Microsoft SQL Server 2012 como um ficheiro transferível. Uma vez que as correções são cumulativas, cada nova versão contém todas as correções e todas as correções de segurança incluídas na versão anterior da correção SQL Server 2012.
Sintomas
Suponha que instala o Microsoft SQL Server 2012 Remote Blob Store para uma base de dados adicional na mesma instância de SQL Server utilizando a linha de comandos. Por exemplo, execute o seguinte comando na linha de comandos:
msiexec /qn /lvx* rbs_install_log_2.txt /i rbs.msi REMOTEBLOBENABLE=1 FILESTREAMPROVIDERENABLE=1 DBNAME="Database Name" FILESTREAMSTORENAME=FilestreamProvider_1 ADDLOCAL=EnableRBS,FilestreamRunScript DBINSTANCE="Domain\ServerName"
Neste cenário, esta instalação falha. Além disso, recebe uma mensagem de erro semelhante à seguinte:
Nota
Erro RBS. Erro Original: Número 2601, Gravidade 14, Estado 1, Procedimento rbs_sp_add_blob_store, Linha 64,
Mensagem: Não é possível inserir a linha de chave duplicada no objeto "mssqlrbs_resources.rbs_internal_blob_stores" com o índice exclusivo "rbs_internal_blob_stores_ix_name". O valor da chave duplicada é (FilestreamProvider_1). A contagem de transações após EXECUTAR indica um número de correspondência incorreto de instruções BEGIN e COMMIT. Contagem anterior = 1, contagem atual = 0.
Causa
Este problema ocorre porque a segunda instalação utiliza valores incorretos para variáveis derivadas da primeira instalação.
Estas variáveis armazenam o nome da base de dados FILESTREAM e o nome da instância. Durante a segunda instalação, os valores destas variáveis são obtidos a partir do registo e substituem os valores que definir na linha de comandos.
Resolução
Informações de atualização cumulativa
Atualização Cumulativa 2 para SQL Server 2012 SP1
A correção para este problema foi lançada pela primeira vez na Atualização Cumulativa 2. Para obter mais informações sobre como obter este pacote de atualização cumulativa para o SQL Server 2012 SP1, clique no seguinte número de artigo para ver o artigo na Base de Dados de Conhecimento Microsoft:
2790947 Pacote de atualização cumulativa 2 para o SQL Server 2012 Service Pack 1Note Uma vez que as compilações são cumulativas, cada nova versão de correção contém todas as correções e todas as correções de segurança incluídas na versão de correção do SQL Server 2012 SP1 anterior. Recomendamos que considere aplicar a versão de correção mais recente que contém esta correção. Para obter mais informações, clique no seguinte número de artigo para ver o artigo na Base de Dados de Conhecimento Microsoft:
2772858 As compilações do SQL Server 2012 que foram lançadas após o lançamento SQL Server Service Pack 1 de 2012
Atualização Cumulativa 5 para SQL Server 2012
A correção para este problema foi lançada pela primeira vez na Atualização Cumulativa 5. Para obter mais informações sobre como obter este pacote de atualização cumulativa para o SQL Server 2012, clique no seguinte número de artigo para ver o artigo na Base de Dados de Conhecimento Microsoft:
2777772 Pacote de atualização cumulativa 5 para o SQL Server 2012Note Uma vez que as compilações são cumulativas, cada nova versão de correção contém todas as correções e todas as correções de segurança incluídas na versão de correção anterior SQL Server 2012. Recomendamos que considere aplicar a versão de correção mais recente que contém esta correção. Para obter mais informações, clique no seguinte número de artigo para ver o artigo na Base de Dados de Conhecimento Microsoft:
2692828 As compilações do SQL Server 2012 que foram lançadas após o lançamento de SQL Server 2012
Solução
Para contornar o problema, instale o Arquivo de Blobs Remoto com o modo de IU em vez de utilizar a linha de comandos.
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".