{"id":12,"date":"2013-08-14T07:15:37","date_gmt":"2013-08-14T06:15:37","guid":{"rendered":"http:\/\/sourceblog.org\/wordpress\/?p=12"},"modified":"2013-08-22T10:24:48","modified_gmt":"2013-08-22T09:24:48","slug":"installation-blob-storage-sharepoint-2013-und-sql-server-2012","status":"publish","type":"post","link":"https:\/\/sourceblog.org\/wordpress\/2013\/08\/installation-blob-storage-sharepoint-2013-und-sql-server-2012\/","title":{"rendered":"Installation Remote Blob Storage im SharePoint 2013 und MS SQL Server 2012"},"content":{"rendered":"<p><strong style=\"font-size: 1.5em;\"><span style=\"text-decoration: underline;\">Werkzeuge:<\/span><\/strong><\/p>\n<ul>\n<li>SQL Management Studio<\/li>\n<li>SQL Server Konfigurations Manager<\/li>\n<li>PowerShell inkl. SharePoint SnapIn (als Administrator ausgef\u00fchrt)<\/li>\n<\/ul>\n<p><span style=\"text-decoration: underline;\"><strong>Berechtigungen:<\/strong><\/span><\/p>\n<ul>\n<li>Installation-Account &#8211;&gt; Farmadministrator \/ lokaler Administrator<\/li>\n<li>IIS Identit\u00e4t der Webanwendung db_owner der entsprechenden Datenbank<\/li>\n<\/ul>\n<p><strong><span style=\"text-decoration: underline;\">Hinweis:<\/span><\/strong><\/p>\n<p style=\"padding-left: 30px;\"><span style=\"color: #ff0000;\">Datenbank<\/span> = Datenbank auf dem der Remote Blob Storage aktiviert werden soll.<\/p>\n<p><strong><span style=\"text-decoration: underline;\">Vorgehensweise:<\/span><\/strong><\/p>\n<p><strong>Schritt 1:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">Bevor man anf\u00e4ngt den Remote Blob Storage (rbs) zu installieren muss auf dem SQL Server einmalig der FILESTREAM aktiviert werden. Dies erfolgt mittels des SQL Server Konfigurations Manager. Dort muss auf der jeweiligen SQL Server Instanz im Dialogfeld Eigenschaften auf der Registerkarte FILESTREAM die Haken gesetzt werden(s.h. Bild)<\/p>\n<div id=\"attachment_13\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/filestream.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-13\" class=\"size-medium wp-image-13\" title=\"FileStream Registrierkarte\" alt=\"FileStream Registrierkarte im SQL Konfigurations Manager mit alle gesetzten Haken\" src=\"https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/filestream-300x168.png\" width=\"300\" height=\"168\" srcset=\"https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/filestream-300x168.png 300w, https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/filestream.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-13\" class=\"wp-caption-text\">Ansicht FileStream Registrierkarte im SQL Konfigurations Manager<\/p><\/div>\n<p style=\"padding-left: 30px;\">Anschlie\u00dfend setzt man das filestream_access_level auf zwei. Dies erfolgt im SQL Management Studio \u00fcber eine neue Abfrage.<\/p>\n<address style=\"padding-left: 60px;\">EXEC sp_configure filestream_access_level, 2<\/address>\n<address style=\"padding-left: 60px;\">RECONFIGURE<\/address>\n<address style=\"padding-left: 30px;\">\u00a0<\/address>\n<p style=\"padding-left: 30px;\">Danach muss der SQL Server Dienst neu gestartet werden.<\/p>\n<p><strong>Schritt 2:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">Zur Aktivierung des Remote Blob Storage auf einer bestimmten Datenbank f\u00fchrt man nachfolgende drei Skripte im SQL Management Studio aus.<\/p>\n<p style=\"padding-left: 30px;\"><span style=\"text-decoration: underline;\">Skript 1:<\/span><\/p>\n<address style=\"padding-left: 60px;\">use\u00a0<span style=\"color: #ff0000;\">Datenbank<\/span><\/address>\n<address style=\"padding-left: 60px;\"><span style=\"color: #000000;\">if not exists<\/span><\/address>\n<address style=\"padding-left: 60px;\">(select * from sys.symmetric_keys\u00a0where name = N&#8217;##MS_DatabaseMasterKey##&#8216;)<\/address>\n<address style=\"padding-left: 60px;\">create master key encryption by password = N&#8217;Admin Key Password !2#4&#8242;<\/address>\n<address style=\"padding-left: 60px;\">go<\/address>\n<p style=\"padding-left: 30px;\"><span style=\"text-decoration: underline;\">\u00a0Skript 2:<\/span><\/p>\n<address style=\"padding-left: 60px;\">use\u00a0<span style=\"color: #ff0000;\">Datenbank<\/span><\/address>\n<address style=\"padding-left: 60px;\">if not exists (select groupname from sysfilegroups where groupname=N&#8217;RBSFilestreamProvider&#8216;)<\/address>\n<address style=\"padding-left: 60px;\">alter database <span style=\"color: #ff0000;\">Datenbank<\/span>\u00a0add filegroup RBSFilestreamProvider contains filestream<\/address>\n<address style=\"padding-left: 60px;\">go<\/address>\n<p style=\"padding-left: 30px;\"><span style=\"text-decoration: underline;\">Skript 3:\u00a0<\/span><\/p>\n<address style=\"padding-left: 60px;\">use\u00a0<span style=\"color: #ff0000;\">Datenbank<\/span><\/address>\n<address style=\"padding-left: 60px;\">alter database <span style=\"color: #ff0000;\">Datenbank<\/span> \u00a0add file (name = RBSFilestreamFile, filename = &#8218;<span style=\"color: #ff0000;\">physikalischer Pfad<\/span>&#8218;) to filegroup RBSFilestreamProvider<\/address>\n<address style=\"padding-left: 60px;\">go<\/address>\n<address style=\"padding-left: 60px;\">\u00a0<\/address>\n<p style=\"padding-left: 30px;\"><span style=\"color: #ff0000;\">Achtung der physikalische Pfad wird automatisch angelegt!<\/span><\/p>\n<p><strong>\u00a0Schritt 3:<\/strong><\/p>\n<p style=\"padding-left: 30px;\"><a href=\"http:\/\/www.microsoft.com\/de-de\/download\/details.aspx?id=35580\">L<\/a>ade die Datei <a title=\"RBS.msi\" href=\"http:\/\/www.microsoft.com\/de-de\/download\/details.aspx?id=35580\" target=\"_blank\">RBS.m<\/a>si aus dem SQL Server Feature Pack SP1 herunter.<\/p>\n<p style=\"padding-left: 30px;\">Diese muss auf allen SharePoint Servern in der Farm installiert werden. Die Installation erfolgt mittels PowerShell (als Administrator) Befehl. Dabei unterscheidet sich der Befehl auf dem ersten Webserver von allen anderen Server grundlegend.<\/p>\n<p style=\"padding-left: 30px;\"><span style=\"text-decoration: underline;\">1. erster Web-Frontend Server:<\/span><\/p>\n<address style=\"padding-left: 60px;\">msiexec \/qn \/lvx* rbs_install_log.txt \/i RBS.msi\u00a0<\/address>\n<address style=\"padding-left: 60px;\">TRUSTSERVERCERTIFICATE=true\u00a0FILEGROUP=PRIMARY\u00a0<\/address>\n<address style=\"padding-left: 60px;\">DBNAME=&#8220;<span style=\"color: #ff0000;\">Datenbank<\/span>&#8220;\u00a0DBINSTANCE=&#8220;<span style=\"color: #ff0000;\">SQLInstanz<\/span>&#8220;\u00a0<\/address>\n<address style=\"padding-left: 60px;\">FILESTREAMFILEGROUP=RBSFilestreamProvider\u00a0<\/address>\n<address style=\"padding-left: 60px;\">FILESTREAMSTORENAME=FilestreamProvider_1<\/address>\n<p style=\"padding-left: 30px;\"><span style=\"text-decoration: underline;\">2. andere SharePoint Server in der Farm:<\/span><\/p>\n<address style=\"padding-left: 60px;\">msiexec \/qn \/lvx* rbs_install_log.txt \/i RBS.msi\u00a0<\/address>\n<address style=\"padding-left: 60px;\">DBNAME=&#8220;<span style=\"color: #ff0000;\">Datenbank<\/span>&#8220;\u00a0DBINSTANCE=&#8220;<span style=\"color: #ff0000;\">SQLInstanz<\/span>&#8220;\u00a0<\/address>\n<address style=\"padding-left: 60px;\">ADDLOCAL=&#8220;Client,Docs,Maintainer,ServerScript<\/address>\n<address style=\"padding-left: 60px;\">,FilestreamClient,FilestreamServer&#8220;<\/address>\n<address style=\"padding-left: 60px;\">\u00a0<\/address>\n<p style=\"padding-left: 30px;\">Wichtig dabei ist, das mann den Befehl unter dem Pfad ausf\u00fchrt wo die RBS.msi abgelegt ist. Unter diesem wird auch die jeweilige Log-Datei abgelegt. In dieser sollte die Meldung<\/p>\n<p style=\"padding-left: 30px;\">&#8222;Produkt: Microsoft SQL Server 2012 Remote BLOB Store \u00a0&#8212; Die Installation wurde erfolgreich abgeschlossen.&#8220;<\/p>\n<p style=\"padding-left: 30px;\">fast am Ende stehen. Au\u00dferdem sollten nun im SQL Management Studio folgende Tabellen zus\u00e4tzlich in der Datenbank angelegt sein (s.h. Bild).<\/p>\n<div id=\"attachment_21\" style=\"width: 297px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/table.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-21\" class=\"size-medium wp-image-21 \" title=\"RBS Tabellen\" alt=\"Remote Blob Storage SharePoint 2013 Tabellen im SQL Server Management Studio\" src=\"https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/table-287x300.png\" width=\"287\" height=\"300\" srcset=\"https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/table-287x300.png 287w, https:\/\/sourceblog.org\/wordpress\/wp-content\/uploads\/2013\/08\/table.png 311w\" sizes=\"auto, (max-width: 287px) 100vw, 287px\" \/><\/a><p id=\"caption-attachment-21\" class=\"wp-caption-text\">\u00dcbersicht aller RBS Tabellen im SQL Server Management Studio<\/p><\/div>\n<p><strong>Schritt 4:<\/strong><\/p>\n<p style=\"padding-left: 30px;\">Abschlie\u00dfend muss nur noch der Remote Blob Storage im SharePoint aktiviert werden. Dazu f\u00fchrt man die PowerShell als Administrator aus und lad anschlie\u00dfend das SharePoint SnapIn mit nachfolgendem Befehl.<\/p>\n<address style=\"padding-left: 60px;\">add-pssnapin microsoft.sharepoint.Powershell<\/address>\n<p style=\"padding-left: 30px;\">Zur Aktivierung f\u00fchrt man dann noch folgende Befehle zeilenweise aus.<\/p>\n<address style=\"padding-left: 60px;\">$myDB = Get-SPContentDatabase <span style=\"color: #ff0000;\">Datenbank<\/span><\/address>\n<address style=\"padding-left: 60px;\">$myRBS = $myDB.RemoteBlobStorageSettings<\/address>\n<address style=\"padding-left: 60px;\">$myRBS.Installed()<\/address>\n<address style=\"padding-left: 60px;\">\u00a0<\/address>\n<p style=\"padding-left: 60px;\"><span style=\"color: #ff0000;\">Dies sollte TRUE zur\u00fcckgeben!!!<\/span><\/p>\n<address style=\"padding-left: 60px;\">\u00a0<\/address>\n<address style=\"padding-left: 60px;\">\u00a0<\/address>\n<address style=\"padding-left: 60px;\">$myRBS.Enable()<\/address>\n<address style=\"padding-left: 60px;\">$myRBS.SetActiveProviderName($myRBS.GetProviderNames()[0])<\/address>\n<address style=\"padding-left: 60px;\">$myRBS<\/address>\n<address style=\"padding-left: 60px;\">\u00a0<\/address>\n<p>Damit ist der Remote Blob Storage installiert und f\u00fcr die Datenbank aktiviert.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Werkzeuge: SQL Management Studio SQL Server Konfigurations Manager PowerShell inkl. SharePoint SnapIn (als Administrator ausgef\u00fchrt) Berechtigungen: Installation-Account &#8211;&gt; Farmadministrator \/ lokaler Administrator IIS Identit\u00e4t der Webanwendung db_owner der entsprechenden Datenbank Hinweis: Datenbank = Datenbank auf dem der Remote Blob Storage &hellip; <a href=\"https:\/\/sourceblog.org\/wordpress\/2013\/08\/installation-blob-storage-sharepoint-2013-und-sql-server-2012\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[3],"tags":[6,8,36,7],"class_list":["post-12","post","type-post","status-publish","format-standard","hentry","category-sp","tag-rbs","tag-remote-blob-storage","tag-sp","tag-sql"],"_links":{"self":[{"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/posts\/12","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/comments?post=12"}],"version-history":[{"count":26,"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/posts\/12\/revisions"}],"predecessor-version":[{"id":78,"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/posts\/12\/revisions\/78"}],"wp:attachment":[{"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/media?parent=12"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/categories?post=12"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sourceblog.org\/wordpress\/wp-json\/wp\/v2\/tags?post=12"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}