Kde najdete název serveru sql. FA

Změna názvu počítače s nainstalovanou instancí MS SQL Serveru není dobrý nápad, protože po přejmenování mohou při provozu SQL nastat některé problémy. Abyste se těmto problémům vyhnuli, musíte aktualizovat metadata systému tak, aby odrážela změnu názvu počítače.

To lze provést pomocí jednoduchého dotazu SQL. Takto vypadá dotaz pro výchozí instanci serveru SQL Server:

sp_dropserver „starý_jméno“;
JÍT
sp_addserver „nový_název“, místní;
JÍT

A tak pro jmenovaného:

sp_dropserver „starý_název \\ název instance“;
JÍT
sp_addserver „nový_název \\ název instance“, místní;
JÍT

Vezměme si například počítač s nainstalovanou instancí MS SQL Serveru. Chcete-li zobrazit aktuální název serveru, otevřete SQL Management Studio a spusťte dotaz:

vyberte @@ Název_serveru

Jak vidíte, název serveru získaný dotazem (2012R2Std_Temp) se neshoduje s názvem počítače (SQL_Test).

Protože příklad používá výchozí instanci serveru SQL Server, spustíme následující dotaz, abychom změnili název:

sp_dropserver „2012R2Std_Temp“;
JÍT
sp_addserver „SQL_Test“, místní;
JÍT

Po přejmenování musíte restartovat SQL Server. To lze provést z příkazového řádku pomocí příkazu:

net stop mssqlserver && net start mssqlserver

Při instalaci serveru Microsoft SQL Server se interní název instance serveru SQL Server vytvoří na základě aktuálního názvu hostitele. Když však přejmenujete počítač / server, název serveru SQL v metadatech (uložených v sys.servers) se neaktualizuje automaticky, v důsledku čehož mohou při práci s SQL nastat různé problémy. V tomto kurzu vám ukážeme, jak správně aktualizovat metadata SQL a změnit název serveru bez úplné přeinstalace MSSQL. Pokyn je použitelný pro samostatné (ne seskupené) verze serveru SQL Server od MS SQL 2000 do 2012.

Rada... Můžete změnit pouze název serveru; bez opětovné instalace nemůžete změnit název instance (instance) serveru SQL Server.

Otevřete konzolu Studio pro správu serveru SQL a pomocí následujícího dotazu zkontrolujte aktuální název hostitele a název instance SQL:

Jak můžete vidět:

  • Název serveru (HostName): DESKTOP-V2OE3P0
  • Plně kvalifikovaný název instance SQL (ServerName): DESKTOP-V2OE3P0 \\ SQLDB

Pojmenujme název počítače a restartujme jej:

Přejmenovat počítač - Nové jméno Sql-Srv1 - Restartovat

Rada... Název počítače lze také změnit ve vlastnostech Tento počítač.

Po restartu zkuste se připojit ke starému názvu serveru SQL: DESKTOP-V2OE3P0 \\ SQLDB. Zobrazí se chyba, protože se změnil název serveru.

Nelze se připojit k DESKTOP-V2OE3P0 \\ SQLDB.
Při navazování připojení k serveru SQL došlo k chybě související se sítí nebo okamžitou. Server nebyl nalezen nebo nebyl přístupný. Ověřte, zda je název instance správný a zda je SQL Server nakonfigurován tak, aby umožňoval vzdálená připojení. (provider: SQL Network Interface, error: 26 - Error Locating Server / Instance Specified) (Microsoft SQL Server)

Znovu zkontrolujte název hostitele a název instance:

Vyberte @@ Název_serveru Název_serveru, Název_hostitele () Název_hostitele

V tomto případě se název instance neshoduje s názvem počítače a odkazuje na starý název počítače DESKTOP-V2OE3P0.

Chcete-li změnit název pojmenované instance SQL, spusťte následující příkaz TSQL.

Odebrat staré jméno:

sp_dropserver "DESKTOP-V2OE3P0 \\ SQLDB";
Jít

Přidejte nový název:

sp_addserver "Sql-Srv1 \\ SQLDB", místní;
JÍT

Pokud potřebujete změnit název serveru pro výchozí instanci serveru SQL Server, je příkaz následující:

sp_dropserver ″ OldName ″;
JÍT
sp_addserver „Nové jméno“, místní;
JÍT

Další kroky

Pokud se při provádění příkazu sp_dropserver zobrazí chyba:

Zpráva 15190, úroveň 16, stav 1, postup sp_dropserver, řádek 56

S největší pravděpodobností existují vzdálená připojení k serveru DESKTOP-V2OE3P0. Pomocí těchto příkazů je můžete resetovat. Pro výchozí instanci:

sp_dropremotelogin DESKTOP-V2OE3P0;
JÍT

Pro pojmenované:

sp_dropremotelogin DESKTOP-V2OE3P0 \\ SQLDB;
JÍT

Pojďme zkontrolovat, zda byl aktualizován název serveru v metadatech:

VYBERTE @@ SERVERNAME JAKO „ServerName“

VYBERTE * Z SYS.SERVERŮ

Jak vidíte, název serveru se změnil. Zbývá restartovat službu SQL Server:

net stop MSSQL $ SQLDB && net start MSSQL $ SQLDB

Důležité!

  • Tato metoda je vhodná pouze pro přejmenování samostatného serveru SQL. Chcete-li přejmenovat SQL Server v clusteru s podporou převzetí služeb při selhání, použijte konzolu Správa clusteru.
  • Nelze změnit název serveru účastnícího se replikace nebo zrcadlení
  • Pokud jsou nainstalovány služby Reporting Services, nebudou po přejmenování k dispozici (https://msdn.microsoft.com/en-us/library/ms345235.aspx)

Nainstaloval jsem Microsoft SQL Server 2008.

Když spustím SQL Server Management Studio (SSMS), zobrazí se přihlašovací okno Připojit k serveru s prázdným textovým polem pro název serveru. Zkoušel jsem mnoho jmen, ale nedokázal jsem to vyřešit.

Jak mohu najít / získat název serveru?

Krok 1: Ujistěte se, že jsou ve vašem systému nainstalovány SQLEXPRESS a LocalDB. Přejít na SQL SERVER Configuration Manager \u003d\u003e SQL Server Service

Pokud pro služby SQL Server není nic uvedeno, nainstalujte níže uvedené součásti (pro 64bitový OS) 1. SqlLocalDB 2. SQLEXPR_x64_ENU 3. SQLEXPRADV_x64_ENU 4. SQLEXPRWT_x64_ENU

Krok 2: Zahajte uvedení do provozu. (Tečka) jako název serveru a klikněte na Připojit [zde zadejte popis obrázku] Znovu zadejte. \\ SQLEXPRESS jako název serveru a klikněte na připojení

1. Můžete spustit následující příkaz.

EXEC xp_cmdshell "reg dotaz" HKLM \\ Software \\ Microsoft \\ Microsoft SQL Server \\ Názvy instancí \\ SQL "";
JÍT

2. pomocí vestavěné standardní zprávy.

vyberte instanci -\u003e klepněte pravým tlačítkem myši -\u003e Zprávy -\u003e Standardní zprávy -\u003e Dashbords Server

Existuje mnoho způsobů uvedených výše. Ale používám poměrně jednoduchý způsob (dobře, ne jednoduchý jako VYBERTE @@ SERVERNAME). Když spustíte SQL Server Management Studio, uvidíte níže výzvu GUI

Tam Název serveru je název vašeho serveru (může existovat více serverů podle vašeho prostředí dev, vyberte ten správný). Snad to pomůže :)

vzhledem k následujícím příkladům

  • Název instance SQL: MSSQLSERVER
  • Přístav: 1433
  • Název hostitele: MyKitchenPC
  • IPv4: 10.242.137.227
  • Přípona DNS: dir.svc.mykitchencompany.com

zde jsou vaše možné názvy serverů:

  • místní \\ MSSQLSERVER
  • localhost, 1433 \\ MSSQLSERVER
  • MyKitchenPC, 1433 \\ MSSQLSERVER
  • 10.242.137.227,1433 \\ MSSQLSERVER
  • MyKitchenPC.dir.svc.mykitchencompany.com, 1433 \\ MSSQLSERVER

start -\u003e CMD -\u003e (Write comand) SQLCMD -L první řádek je název serveru, pokud název serveru (lokální) Název serveru: YourPcName \\ SQLEXPRESS

Spusťte tento dotaz a získejte název

Jak uvádí @ Khaneddy2013, cmd SQLCMD -L ne při spuštění vrátí název serveru. Bcz Právě jsem nainstaloval SSMS (nebyly nainstalovány žádné lokální db a server). Po pokusy instalace SqlLocaLDB a SQLEXPR32_x86_ENU (32bitový OS) Byl jsem schopen se připojit. Okno cmd nyní také zobrazuje názvy serverů.

výchozí název serveru je název vašeho počítače, ale můžete použít „.“ (Dot) místo názvu místního serveru.

ještě jedna věc, kterou byste měli zvážit, možná jste nainstalovali SQL Server Express Edition. v tomto případě musíte zadat „. \\ sqlexpress "jako název serveru.

můj problém byl při připojování k databázi SQL v průvodci přidáním odkazu najít SERVERNAME. Zjistil jsem to spuštěním dotazu (SELECT @@ SERVERNAME) uvnitř SQL management studio a reusl je můj název serveru. Dal jsem to do pole pro název serveru a všechno šlo dobře.

Také jsem měl tento problém poprvé.

V dialogovém okně Připojit k serveru zkontrolujte výchozí nastavení a klikněte na Připojit. Chcete-li se připojit, pole Název serveru musí obsahovat název počítače, na kterém je nainstalován SQL Server. Pokud je databázovým strojem pojmenovaná instance, musí pole Název serveru obsahovat také název instance ve formátu: název_počítače \\ název_instance.

Například jsem například vyřešil problém takto: napsal jsem název serveru: Alex-PC \\ SQLEXPRESS

10

Moje pracovní společnost má server MSSQL 2005. Mám dvě otázky, abych zjistil aktuální uživatelský protokol a jakýkoli způsob zaslání varovné zprávy:

První otázkou je, zda existuje T-SQL nebo SP k vyhledání aktuálního uživatelského jména a názvu počítače. Pokud uživatel používá pro vzdálený přístup k serveru SQL název serveru SQL, existuje způsob, jak zjistit název daného okna uživatele (přihlašovací jméno systému Windows)?

Moje další otázka je, jestli mohu získat uživatelské jméno nebo ID, existuje způsob, jak poslat varovnou zprávu, například „server SQL je aktuálně vyčištěn nebo zálohován, prosím, v tuto chvíli se nepřihlašujte“, myslím, že by tvrdý. Možná budu muset uživateli poslat e-mail.

SQL Server je k dispozici pouze ve společnosti. SQL server obsahuje seznam uživatelů jako přihlašovacích uživatelů: uživatelé Windows, uživatelé SQL a sa.

  • 3 odpovědi
  • Třídění:

    Aktivita

30

VYBRAT SUSER_SNAME (), HOST_NAME ()

Pokud je připojení „sa“ (nebo jiné přihlášení SQL), nemůžete najít uživatelské jméno domény / okna. SQL Server ví, že je to „sa“ nebo se jedná o přihlášení SQL.

HOST_NAME může být nespolehlivý a lze jej nastavit v připojovacím řetězci („Název aplikace“). Nebo to může být vágní jako „Microsoft Office“ pro výchozí nastavení pro Access, Excel atd.

Můžete se vrátit zpět s client_net_address v sys.dm_exec_connections a porovnat MAC adresu IP a zjistit, kdo je přihlášen ...

4

Nejjednodušší způsob, jak zjistit, jak je hostitel a uživatel

EXEC sp_who2;

Kde získáte nějaké další informace, které by mohly být dobré vědět, jako kdyby byl uživatel aktivní atd. ... to problém nevyřeší, oznámila společnost gbn.

3

Díky za všechny vaše návrhy. Vyzkoušel jsem všechny metody a myslím si, že metoda Joachima Backmana uspokojuje moji potřebu. Zde je shrnutí toho, co se učím.

  • Požadavek na data sys.syslogins obsahuje pouze informace o protokolu. Účet neoznačuje aktuální časové razítko uživatele. Pokusil jsem se přihlásit z jiné aplikace v mém SQL a tento dotaz neuvádí přihlášení.
  • SELECT SUSER_SNAME (), HOST_NAME () zobrazí pouze jednoho uživatele na serveru SQL. Například se přihlašuji jako moje jméno pro SQL Server. Výsledek tohoto dotazu obsahuje pouze mé jméno a název stroje. Tento dotaz nezobrazuje aktuální uživatele na serveru SQL.
  • exec sp_who2 obsahuje informace, které potřebuji. Uvádí seznam aktuálního uživatelského jména, aktivního stavu, přístupu k uživatelskému jménu db a použitého příkazu.

Abych získal informace, které používám v SP, musím filtrovat a spojit informace s jinými tabulkami, jako jsou e-maily. Zde jsou kódy, které používám:

DECLARE @retTable TABLE (SPID int není , stav varchar (255) není , přihlášení varchar (255) není , HostName varchar (255) není , BlkBy varchar (10) není , DBName varchar (255) , příkaz varchar (255) not , CPUTime int not , DiskIO int not , LastBatch varchar (255) not , ProgramName varchar (255) , SPID2 int not , REQUESTID INT) INSERT INTO @retTable EXEC sp_who2 SELECT Status, Login , HostName, DBName, Command, CPUTime, ProgramName - * FROM @retTable --WHERE Login not like "sa%" - if not interested in sa ORDER BY Login, HostName