Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro: SQL Server 2016 (13.x) a novější verze
Toto je kurz 1 série kurzů RevoScaleR o používání funkcí RevoScaleR s SQL Serverem.
Tento kurz popisuje, jak vytvořit databázi SQL Serveru a nastavit oprávnění potřebná k dokončení dalších kurzů v této sérii. K provedení následujících úloh použijte SQL Server Management Studio (SSMS) nebo jiný editor dotazů:
- Vytvoření nové databáze pro uložení dat pro trénování a bodování dvou modelů R
- Vytvoření přihlášení uživatele databáze s oprávněními k vytváření a používání databázových objektů
Vytvoření databáze
Tento kurz vyžaduje databázi pro ukládání dat a kódu. Pokud nejste správce, požádejte svého správce, aby vytvořil databázi a přihlásil se za vás. Budete potřebovat oprávnění k zápisu a čtení dat a ke spouštění skriptů jazyka R.
V aplikaci SQL Server Management Studio se připojte k instanci databáze s podporou jazyka R.
Klikněte pravým tlačítkem myši na Databáze a vyberte Nová databáze.
Zadejte název nové databáze: RevoDeepDive.
Vytvoření přihlášení
Klikněte na Nový dotaz a změňte kontext databáze na hlavní databázi.
V novém okně dotazu spusťte následující příkazy, které vytvoří uživatelské účty a přiřadí je k databázi použité pro tento kurz. V případě potřeby nezapomeňte změnit název databáze.
Chcete-li ověřit přihlášení, vyberte novou databázi, rozbalte položku Zabezpečení a rozbalte položku Uživatelé.
Uživatel s Windows
-- Create server user based on Windows account
USE master
GO
CREATE LOGIN [<DOMAIN>\<user_name>] FROM WINDOWS WITH DEFAULT_DATABASE=[RevoDeepDive]
--Add the new user to tutorial database
USE [RevoDeepDive]
GO
CREATE USER [<user_name>] FOR LOGIN [<DOMAIN>\<user_name>] WITH DEFAULT_SCHEMA=[db_datareader]
Přihlášení SQL
-- Create new SQL login
USE master
GO
CREATE LOGIN [DDUser01] WITH PASSWORD='<type password here>', CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF;
-- Add the new SQL login to tutorial database
USE RevoDeepDive
GO
CREATE USER [DDUser01] FOR LOGIN [DDUser01] WITH DEFAULT_SCHEMA=[db_datareader]
Přiřadit oprávnění
Tento kurz ukazuje operace skriptu R a DDL, včetně vytváření a odstraňování tabulek a uložených procedur a spouštění skriptu R v externím procesu na SQL Serveru. V tomto kroku přiřaďte oprávnění k povolení těchto úloh.
Tento příklad předpokládá přihlašovací údaje SQL (DDUser01), ale pokud jste vytvořili přihlašovací údaje Windows, použijte je namísto.
USE RevoDeepDive
GO
EXEC sp_addrolemember 'db_owner', 'DDUser01'
GRANT EXECUTE ANY EXTERNAL SCRIPT TO DDUser01
GO
Řešení problémů s připojením
Tato část uvádí některé běžné problémy, se kterými se můžete setkat v průběhu nastavování databáze.
Jak můžu ověřit připojení k databázi a zkontrolovat dotazy SQL?
Před spuštěním kódu jazyka R pomocí serveru můžete zkontrolovat, jestli je databáze přístupná z vývojového prostředí R. Průzkumník serveru v sadě Visual Studio i SQL Server Management Studio (SSMS) jsou bezplatné nástroje s výkonnými funkcemi připojení a správy databází.
Pokud nechcete instalovat další nástroje pro správu databáze, můžete vytvořit testovací připojení k instanci SQL Serveru pomocí správce zdroje dat ODBC v Ovládacích panelech. Pokud je databáze správně nakonfigurovaná a zadáte správné uživatelské jméno a heslo, měli byste vidět právě vytvořenou databázi a vybrat ji jako výchozí databázi.
Mezi běžné důvody selhání připojení patří, že pro server nejsou povolená vzdálená připojení a protokol Pojmenované kanály není povolený. Další tipy pro řešení potíží najdete v tomto článku: Řešení potíží s připojením k databázovému stroji SQL Serveru.
Můj název tabulky má předponu datareader - proč?
Když jako db_datareader zadáte výchozí schéma tohoto uživatele, budou všechny tabulky a další nové objekty vytvořené tímto uživatelem předponou názvu schématu . Schéma je jako složka, kterou můžete přidat do databáze za účelem uspořádání objektů. Schéma také definuje oprávnění uživatele v databázi.
Pokud je schéma přidružené k jednomu konkrétnímu uživatelskému jménu, je uživatel vlastníkem schématu. Když vytvoříte objekt, vždy ho vytvoříte ve vlastním schématu, pokud ho výslovně nepožádáte, aby byl vytvořen v jiném schématu.
Pokud například vytvoříte tabulku s názvem TestData a vaše výchozí schéma je db_datareader, vytvoří se tabulka s názvem
<database_name>.db_datareader.TestData.Z tohoto důvodu může databáze obsahovat více tabulek se stejnými názvy, pokud tabulky patří do různých schémat.
Pokud hledáte tabulku a nezadáte schéma, databázový server hledá schéma, které vlastníte. Proto při přístupu k tabulkám ve schématu přidruženém k vašemu přihlášení není nutné zadávat název schématu.
Nemám oprávnění DDL. Mohu stále spustit tutoriál??
Ano, ale měli byste někoho požádat, aby data předem načetl do tabulek SQL Serveru a přeskočíte k dalšímu kurzu. Funkce, které vyžadují oprávnění DDL, se v kurzu vyvolají, kdykoli je to možné.
Požádejte také správce o udělení oprávnění SPUŠTĚNÍ JAKÉHOKOLI EXTERNÍHO SKRIPTU. Je potřeba ke spuštění skriptu jazyka R, ať už vzdáleně, nebo pomocí .
sp_execute_external_script