Jak lze spravovat pomocí nástroje osql SQL Server Desktop Engine (MSDE 2000) nebo SQL Server 2005 Express Edition

Prohlášení o odmítnutí odpovědnosti pro už nepodporovaný obsah KB

Tento článek byl napsán pro produkty, ke kterým již Microsoft nadále nenabízí podporu. Článek je tedy poskytován „tak, jak je“ a nebude už nadále aktualizován.

Souhrn

SQL Server Desktop Engine (také známé jako MSDE 2000) nemá vlastní uživatelské rozhraní, protože je primárně určen ke spuštění na pozadí. Uživatelé interaktivně pracovat s MSDE 2000 pomocí programu, ve kterém je vložen. Jediný nástroj, který je součástí MSDE 2000 je nástroje osql . Spustitelný soubor Sql.exe, je umístěn ve složce MSSQL\Binn pro výchozí instanci databázového stroje MSDE 2000. Tento článek se zaměřuje na tom, jak spravovat MSDE 2000 pomocí nástroje osql .

Pokud používáte SQL Server 2005, můžete také osql nástroj pro správu SQL Server 2005 Express Edition. Tato funkce však budou odebrány v budoucí verzi Microsoft SQL Server 2005. Doporučujeme není použít tuto funkci v nové vývojové práce a plán upravit aplikace, které aktuálně použít funkci. Místo toho použijte nástroj Sqlcmd. Další informace o použití Sqlcmd nástroj naleznete následujícím webu Microsoft Developer Network (MSDN):

Co je Osql?

Osql nástroj je nástroj příkazového řádku Microsoft Windows 32, který můžete použít ke spuštění příkazů jazyka Transact-SQL a soubory skriptů. Nástroje osql rozhraní ODBC databáze application programming interface (API) používá ke komunikaci se serverem.


Jak lze používat Osql?

Obvykle použijete nástroje osql těmito způsoby:
  • Interaktivní zadávání příkazů jazyka Transact-SQL způsobem podobná práci s příkazovým řádkem.
  • Uživatelé odesílají osql práce buď:
    • Zadání jednoho příkazu Transact-SQL ke spuštění. - nebo -

    • - nebo -tak, že přejdete na soubor skriptu, který obsahuje příkazy jazyka Transact-SQL chcete-li spustit nástroj.

Interaktivní zadávání příkazů jazyka Transact-SQL

Zobrazíte seznam písmen možnosti nástroje osql příkazového řádku zadejte následující příkaz a stiskněte klávesu ENTER:

osql -?


Další informace o každé možnosti nástroje osql naleznete v tématu "osql nástroj" v SQL Server Books Online.

Chcete-li interaktivní zadávání příkazů jazyka Transact-SQL, postupujte takto:

  1. Ověřte, zda je spuštěn modul MSDE 2000.
  2. Připojit k MSDE 2000 (Další informace naleznete v části "Připojení k SQL Server Desktop Engine (MSDE 2000)").
  3. Příkazového řádku osql zadejte příkazy Transact-SQL a potom stiskněte klávesu ENTER. Po stisknutí klávesy ENTER na konci každého vstup osql ukládá příkazy na tomto řádku.

    • Chcete-li spustit příkazy aktuálně uložených v mezipaměti, zadejte "Jít" a stiskněte klávesu ENTER.

    • Chcete-li spustit dávkové Transact-SQL příkazů, zadejte každý příkaz Transact-SQL na samostatných řádcích. Zadejte "Jít" na posledním řádku hlášen konec partie a spouštět příkazy aktuálně uložených v mezipaměti.

    Výsledky se zobrazí v okně konzoly.

  4. Ukončíte osqlzadejte QUIT nebo EXIT a stiskněte klávesu ENTER.

Odeslání úlohy Osql

Obvykle je odeslat osql úloha, jedním ze dvou způsobů. Můžete buď:

  • Určete jednoho příkazu Transact-SQL.

    - nebo -

  • - nebo -nástroj přejděte na soubor skriptu.
Zde je další informace o jednotlivých metod.

Zadejte jeden Transact-SQL výpis

Chcete-li spustit příkaz Transact-SQL proti místní výchozí instance MSDE 2000, zadejte příkaz podobný následujícímu


-E osql - q "Příkaz Transact-SQL"


Pokud

  • -E používá ověřování systému Microsoft Windows NT.

    - a -

  • - a -- q spustí příkaz Transact-SQL, ale po dokončení dotazu neexistuje osql .
Chcete-li spustit příkaz Transact-SQL a ukončení osql, použijte -Q argument namísto - q.


Nástroj přejděte na soubor skriptu

Chcete-li nástroj přejděte na soubor skriptu, postupujte takto:
  1. Vytvoření souboru skriptu, který obsahuje dávky příkazů jazyka Transact-SQL (například myQueries.sql).
  2. Otevřete příkazový řádek, zadejte příkaz podobný následujícímu a stiskněte klávesu ENTER

    osql -E -i parametr Vstupní_soubor


    Pokud

    parametr Vstupní_soubor je úplná cesta k souboru skriptu. Například pokud myQueries.sql soubor skriptu je umístěn ve složce C:\Queries, nahraďte parametr parametr Vstupní_soubor C:\Queries\myQueries.sql.

    Výsledky souboru skriptu se zobrazí v okně konzoly. Pokud chcete odeslat výsledky do souboru, přidáte -oVýstupní_soubor argument příkazu uvedené výše. Například:

    osql -E -i parametr Vstupní_soubor Výstupní_soubor -o


    Pokud

    Výstupní_soubor je úplná cesta k výstupnímu souboru.

    Chcete-li odebrat číslování a vyzvat symboly ve výstupu, přidejte přepínač -n příkazu uvedené výše. Například:

    osql -E -i parametr Vstupní_soubor -o Výstupní_soubor - n

Připojení k SQL Server Desktop Engine (MSDE 2000)

Připojit k MSDE 2000, postupujte takto:

  1. Ověřte, zda je spuštěn modul MSDE 2000.
  2. Otevřete příkazový řádek v počítači, který je hostitelem instance MSDE 2000, ke kterému se chcete připojit.
  3. Zadejte následující příkaz a stiskněte klávesu ENTER:

    osql -E


    To umožňuje místní, výchozí instanci databázového stroje MSDE 2000 pomocí ověřování systému Windows.

    Chcete-li se připojit k pojmenované instance MSDE 2000, zadejte:

    osql -E -S servername\instancename.


    Pokud se zobrazí následující chybová zpráva, pravděpodobně není spuštěn modul MSDE 2000 nebo jste zadali nesprávný název pojmenované instance MSDE 2000, která je nainstalována:

    [Sdílené paměti] SQL Server neexistuje nebo odepřen přístup.
    [Sdílené paměti] ConnectionOpen (Connect()).
    Pokud se úspěšně připojíte k serveru, zobrazí se následující výzva:

       1>

    Tato výzva znamená, že osql je spuštěna. Nyní můžete zadat interaktivně Transact-SQL příkazy a výsledky se zobrazí v příkazovém řádku.

Spravovat MSDE 2000

V dalších částech tohoto článku vám představí stručně Transact-SQL příkazy, nejčastěji používané ke správě MSDE 2000.

Vytvořit nové přihlášení

Uživatel se nemůže připojit k serveru SQL Server bez poskytnutí platné jméno. Sp_grantlogin uložená procedura se používá k autorizaci síťový účet systému Windows (skupinu nebo uživatelský účet) pro použití jako přihlášení serveru SQL Server pro připojení k instanci serveru SQL Server pomocí ověřování systému Windows. Následující příklad umožňuje uživateli systému Windows NT s názvem Corporate\Test pro připojení k instanci serveru SQL Server:

EXEC sp_grantlogin 'Corporate\Test'
Sp_grantlogin uložené proceduře lze spustit pouze členové sysadmin nebo securityadmin pevné role serveru. Další informace o rolích naleznete v tématu "Role, architektura serveru SQL" v SQL Server Books Online.

Další informace o sp_grantlogin uložené procedury naleznete v tématu "sp_grantlogin, Transact SQL Reference" téma v SQL Server Books Online.

Vytvoření nové přihlašovací účet pro připojení k serveru SQL pomocí ověřování serveru SQL Server pomocí sp_addlogin uložené procedury. Následující příklad vytvoří SQL Server přihlášení pro uživatele s názvem "test" s heslem "Ahoj":

EXEC sp_addlogin 'test','hello'
Pouze členové sysadmin a securityadmin pevné role serveru můžete spustit sp_addlogin uložené procedury. Další informace o sp_addlogin uložené procedury, naleznete v tématu "sp_addlogin, Transact SQL Reference" téma v SQL Server Books Online.

Přístup k databázi

Poté, co uživatelé připojí k instanci serveru SQL Server, nemohou provádět činnosti v databázi dokud dbo udělí přístup k databázi. Chcete-li přidat účet zabezpečení pro nové uživatele k aktuální databázi, můžete použít sp_grantdbaccess uložené procedury. Následující příklad přidá účet uživatele systému Microsoft Windows NT s názvem Corporate\BobJ k aktuální databázi s názvem "Bob":
EXEC sp_grantdbaccess 'Corporate\BobJ', 'Bob'

Sp_adduser uložené procedury provádí stejnou funkci jako sp_grantdbaccess uložené procedury. Vzhledem k tomu, sp_adduser uložené procedury je zahrnut z důvodu zpětné kompatibility, společnost Microsoft doporučuje použití sp_grantdbacess uložená procedura.

Pouze členové sysadmin pevné role serveru a db_owner pevné role databáze a db_accessadmin lze spustit sp_grantdbaccess uložené procedury. Další informace o sp_grantdbaccess uložené procedury naleznete v tématu "sp_grantdbaccess, Transact SQL Reference" téma v SQL Server Books Online.

Jak změnit heslo pro přihlášení

Chcete-li změnit heslo pro přihlášení, pomocí sp_password uložené procedury. Následující příklad změní heslo pro přihlášení "test" z "ok" na "Ahoj":

EXEC sp_password 'ok', 'hello','test'

Spusťte výchozí oprávnění role public pro uživatele, který je změna hesla pro přihlášení nebo vlastní. Heslo pro přihlášení jiného uživatele můžete změnit pouze členové sysadmin role. Další informace o sp_password uložené procedury naleznete v tématu "sp_password, Transact SQL Reference" téma v SQL Server Books Online.

Vytvoření databáze

Databáze MSDE 2000 se skládá z kolekce tabulek, které obsahují data a další objekty, jako jsou například zobrazení, indexy, uložené procedury a aktivační procedury, které jsou definovány pro podporu činností prováděných s daty. Vytvoření databáze MSDE 2000, použijte příkaz "Vytvořit databázi" Transact-SQL. Další informace o vytvoření databáze naleznete v tématu "Vytváření databáze" v SQL Server Books Online.

Následující příklad vytvoří databázi s názvem Test. Vzhledem k tomu, že žádné další parametry jsou přidány do příkazu, Test databáze bude stejnou velikost jako model databáze:

CREATE DATABASE Test
Oprávnění vytvořit databázi výchozí členy sysadmin a dbcreator pevné role serveru. Další informace o příkazu "Vytvořit databázi" tématu "Vytvořit databázi, Transact SQL Reference" v SQL Server Books Online.

Chcete-li vytvořit nový objekt databáze, použijte příkaz Transact-SQL vytvořit. Například chcete-li vytvořit novou tabulku, použijte příkaz "CREATE TABLE" Transact-SQL. Další informace naleznete v dokumentaci SQL Server Books Online.

Zálohování a obnovení databáze

Zálohování a obnovení součástí serveru SQL Server obsahuje ochranných důležité pro ochranu kritických dat uložených v databázích serveru SQL Server.

Při správném plánování můžete zotavit mnoho chyb, včetně:
  • Selhání média.
  • Uživatelské chyby.
  • Trvalou ztrátu serveru.
Zálohování a obnovení databází je navíc vhodné pro jiné účely, například kopírování databáze z jednoho serveru na jiný. Zálohování databáze z jednoho počítače a obnovení databáze do jiné, můžete snadno a rychle vytvořit kopii databáze.

Další informace o databázi zálohování a obnovení, naleznete v tématu "Backing Up a obnovení databáze" v SQL Server Books Online.

Následující příklad provádí úplnou zálohu databáze pro databázi s názvem mydb, názvy záložní Mydb.bak a potom ve složce C:\Msde\Backup jsou uloženy zálohy:

BACKUP DATABASE mydb TO DISK = 'C:\MSDE\Backup\mydb.bak'

Následující příklad provádí záloha protokolu pro databázi s názvem mydb, názvy záložní Mydb_log.bak a uloží jej do složky C:\Msde\Backup:

BACKUP LOG mydb TO DISK = 'C:\MSDE\Backup\mydb_log.bak'

Výchozí oprávnění zálohování databází a PROTOKOLŮ zálohování členům sysadmin pevné role serveru a db_owner a db_backupoperator fixní databázové role. Další informace o příkazu zálohování naleznete v tématu "Zálohování, Reference jazyka Transact-SQL" v SQL Server Books Online.


MSDE zahrnuje službu Agent serveru SQL Server pro správu naplánovaných úloh. Můžete například vytvořit a naplánovat úlohu zálohování Transact-SQL. Služba SQL Server Agent spravuje plánování úloh. Ukázkový kód o tom, jak provést zálohování a plánování zálohování pomocí různých uložené procedury s MSDE 2000 naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:

241397 jak zálohovat databázi Microsoft Data Engine s Transact-SQL
Další informace o SQL Server Agent Service naleznete v tématu "Služba Agent serveru SQL" v SQL Server Books Online.

Zálohování databáze je jen polovina procesu. Je důležité vědět, jak obnovit databázi ze zálohy. V následujícím příkladu obnoví databázi s názvem mydb ze záložního souboru C:\Msde\Backup\Mydb.bak:

RESTORE DATABASE mydb FROM DISK ='C:\MSDE\Backup\mydb.bak'
Pokud probíhá obnova databáze neexistuje, musí mít uživatel vytvořit databázi oprávnění ke spuštění příkazu obnovení. Pokud databáze existuje, oprávnění obnovení výchozí členy sysadmin a dbcreator pevné role serveru a vlastníka (dbo) databáze. Další informace o příkazu obnovení naleznete v tématu "Obnovení, Transact SQL Reference" téma v SQL Server Books Online.

Připojení a odpojení databáze

Údaje a transakce soubory protokolu databáze můžete oddělit a potom znovu připevněn na jiný server nebo dokonce na stejném serveru. Odpojení databáze odebere databázi ze serveru SQL Server, ale neporušené databáze do souborů protokolu dat a transakce, které tvoří databáze. Potom můžete tyto údaje a transakce soubory protokolu databáze připojit k libovolné instanci serveru SQL Server, včetně serveru, ze kterého byla databáze odpojen. To zpřístupní databázi v přesně stejném stavu, ve kterém byl v době byl odpojen. Další informace naleznete v tématu "Připojení a odpojení databáze" v SQL Server Books Online.


Následující příklad odpojí databázi s názvem mydb aktuální instance serveru SQL Server:

EXEC sp_detach_db 'mydb'
Sp_detach_db uložené procedury lze spustit pouze členové role dlouhodobého serveru sysadmin . Další informace o sp_detach_db uložené procedury naleznete v tématu "sp_detach_db, Transact SQL Reference" téma v SQL Server Books Online.


Následující příklad připojí dva soubory z databáze s názvem mydb aktuální instanci serveru SQL Server:

EXEC sp_attach_db @dbname = N'mydb',    @filename1 = N'C:\MSDE\Backup\mydb.mdf', 
@filename2 = N'C:\MSDE\Backup\mydb.ldf'

Velké písmeno N se používá pro předpony Unicode řetězcová konstanta. Předpona "N" národní jazyk zkratka ve standardním SQL-92. Další informace naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:

239530 soubor INF: konstanty řetězec Unicode SQL Server vyžadují předpona N
Tento postup lze spustit pouze členové sysadmin a dbcreator pevné role serveru. Další informace o sp_attach_db uložené procedury naleznete v tématu "sp_attach_db, Transact SQL Reference" téma v SQL Server Books Online.

Následující informace o použití nástroje osql platí také pro všechny edice systému Microsoft SQL Server 2000.

Odkazy

Chcete-li stáhnout aktualizovanou verzi SQL Server 2000 Books Online, navštivte následující Web společnosti Microsoft:

Chcete-li stáhnout verzi serveru SQL Server 7.0 SQL Server Books Online, navštivte na následujícím webu společnosti Microsoft:

Další informace o MSDE 2000 naleznete v následujících článcích znalostní báze Microsoft Knowledge Base:

319930 jak se připojit k instanci serveru SQL Server Desktop Edition nebo SQL Server 2005 Express Edition

241397 jak zálohovat databázi Microsoft Desktop Engine s Transact-SQL
Vlastnosti

ID článku: 325003 - Poslední kontrola: 16. 1. 2017 - Revize: 1

Váš názor