SQL серверийн нэрийг олж мэдээрэй. F.A.Q

Суулгасан MS-ийн жишээ бүхий компьютерийн нэрийг өөрчлөх SQL сервер- өөрөө биш сайхан санаа SQL роботын нэрийг өөрчилсний дараа фрагментуудад зарим асуудал гарч болзошгүй. Эдгээр асуудлаас зайлсхийхийн тулд системийн мета өгөгдлийг компьютерийн нэрийн өөрчлөлтийг тусгасан байдлаар шинэчлэх шаардлагатай.

Болхи хүмүүсээс нэмэлт тусламж авахын тулд мөнгө олох боломжтой SQL асуух болно. SQL серверийн өгөгдмөл жишээний асуулга нь иймэрхүү харагдаж байна:

sp_dropserver "хуучин_нэр";
ЯВ
sp_addserver ″шинэ_нэр″, локал;
ЯВ

Ингээд нэрлэгдсэн хүний ​​хувьд:

sp_dropserver 'хуучин_нэр\InstanceName';
ЯВ
sp_addserver ″шинэ_нэр¥InstanceName″, локал;
ЯВ

Жишээлбэл, MS SQL Server суулгасан компьютерийг авч үзье. Серверийн яг нэрийг харахын тулд SQL Management Studio-г нээгээд дараахыг оруулна уу:

@@Серверийн нэрийг сонгоно уу

Таны харж байгаагаар серверийн нэрийг нэмэлт тушаалаас (2012R2Std_Temp) хассан бөгөөд компьютерийн нэрнээс (SQL_Test) хадгалагдаагүй болно.

Хэрэв програм нь SQL Server-ийн анхдагч жишээг ашигладаг бол нэрийг өөрчлөхийн тулд дараах тушаалыг ашиглана:

sp_dropserver ″2012R2Std_Temp″;
ЯВ
sp_addserver SQL_Test, локал;
ЯВ

Нэрээ өөрчилсний дараа та SQL серверийг дахин эхлүүлэх хэрэгтэй. Мөнгө олох боломжтой тушаалын мөр, тушаалаар:

net stop mssqlserver && net start mssqlserver

At Microsoft суулгасан SQL Server, SQL серверийн жишээний дотоод нэр нь урсгалын хостын нэрээс үүсгэгддэг. Гэсэн хэдий ч компьютер/серверийн нэрийг өөрчлөх үед мета өгөгдлийн SQL серверийн нэр (sys.servers-д хадгалагдсан) автоматаар шинэчлэгдэхгүй бөгөөд үүний үр дүнд SQL-тэй ажиллахад янз бүрийн асуудал гарч болзошгүй. Энэхүү заавар нь SQL дэх мета өгөгдлийг хэрхэн зөв шинэчлэх, серверийн нэрийг өөрчлөхгүйгээр хэрхэн өөрчлөхийг харуулах болно бүрэн дахин суулгах MSSQL. Зааврууд нь MS SQL 2000-аас 2012 хүртэлх локал (кластерт бус) SQL Server хувилбаруудад хүчинтэй.

Порада. Та зөвхөн тухайн өдрийн нэрийг өөрчлөх боломжтой бөгөөд суулгалгүйгээр SQL Server жишээний нэрийг өөрчлөх боломжгүй.

Консолын түгжээг тайл SQL Server Management StudioЯг хостын нэр болон SQL жишээний нэрийг хурдан өөрчлөхөд туслахын тулд:

Та яаж хэлэх вэ:

  • Серверийн нэр (HostName): DESKTOP-V2OE3P0
  • Гадаад SQL жишээний нэр (ServerName): DESKTOP-V2OE3P0\SQLDB

Компьютерийн нэрийг өөрчилж, нэрийг нь өөрчилье:

Нэр солих-Компьютер -Шинэ нэр Sql-Srv1 -Дахин эхлүүлэх

Порада. Компьютерийн нэрийг My Computer хэсгээс өөрчилж болно.

Дахин нэвтэрсний дараа хуучин SQL серверийн нэр рүү холбогдож үзнэ үү: DESKTOP-V2OE3P0\SQLDB. Серверийн нэр өөрчлөгдсөнийг анхаарна уу.

DESKTOP-V2OE3P0\SQLDB-д холбогдох боломжгүй байна.
SQL сервертэй холбогдох үед сүлжээтэй холбоотой эсвэл шуурхай алдаа гарлаа. Серверт хандах боломжгүй эсвэл нэвтрэх боломжгүй байна. Имэйлийн оролт зөв, SQL сервер алсын холболтыг зөвшөөрөхөөр тохируулагдсан эсэхийг шалгана уу. (үзүүлэгч: SQL сүлжээний интерфэйс, алдаа: 26 – Серверийн байршлыг тогтоох алдаа/Заасан жишээ) (Microsoft SQL Server)

Хост нэр болон жишээний нэрийг дахин шалгацгаая:

@@ServerName ServerName, Host_name() HostName-г сонгоно уу

Энэ тохиолдолд жишээний нэр нь компьютерийн нэртэй таарахгүй бөгөөд хуучин компьютерийн DESKTOP-V2OE3P0 нэр дээр суурилдаг.

Нэрлэсэн SQL жишээний нэрийг өөрчлөхийн тулд TSQL командыг өгнө үү.

Хуучин нэрийг харах:

sp_dropserver "DESKTOP-V2OE3P0\SQLDB";
Яв

Илүү олон шинэ нэр нэмсэн:

sp_addserver "Sql-Srv1\SQLDB", локал;
ЯВ

Хэрэв та SQL серверийн анхдагч жишээний серверийн нэрийг өөрчлөх шаардлагатай бол тушаал дараах байдалтай байна.

sp_dropserver "Хуучин нэр";
ЯВ
sp_addserver Шинэ нэр, локал;
ЯВ

Нэмэлт үйрмэг

Sp_dropserver командыг устгасны дараа дараах мессеж гарч ирнэ.

Мессеж 15190, Түвшин 16, Төлөв 1, Процедурын sp_dropserver, Мөр 56

Бүх зүйлийн төлөө Швидше, є алсын холболтууд DESKTOP-V2OE3P0 сервер рүү. Та тэдгээрийг дараах тушаалаар устгаж болно. Өгөгдмөл жишээний хувьд:

sp_dropremotelogin DESKTOP-V2OE3P0;
ЯВ

Нэрлэсэн хувьд:

sp_dropremotelogin DESKTOP-V2OE3P0\SQLDB;
ЯВ

Мета өгөгдөл дэх серверийн нэр шинэчлэгдсэн эсэхийг шалгацгаая:

@@SERVERNAME-г 'СерверНэр'-ээр СОНГОХ

SYS.SERVERS-ээс * СОНГОХ

Таны мэдэж байгаагаар серверийн нэр өөрчлөгдсөн. SQL серверийг дахин эхлүүлэх боломжгүй байсан:

цэвэр зогсоох MSSQL$SQLDB && цэвэр эхлэх MSSQL$SQLDB

Чухал!

  • Энэ арга нь зөвхөн SQL серверийн нэрийг өөрчлөхөд тохиромжтой бөгөөд энэ нь үнэ цэнэтэй юм. Failover Cluster дахь SQL серверийн нэрийг өөрчлөхийн тулд та Cluster Management консолыг нээх хэрэгтэй.
  • Хуулбарлах эсвэл толин тусгал хийхэд оролцож буй серверийн нэрийг өөрчлөх боломжгүй
  • Хэрэв тайлагнах үйлчилгээг суулгасан бол нэрийг нь өөрчилсний дараа ашиглах боломжгүй болно (https://msdn.microsoft.com/en-us/library/ms345235.aspx)

Би Microsoft SQL Server 2008 суулгасан.

Би SQL Server Management Studio (SSMS)-г ажиллуулахдаа Нэрийн серверийн хоосон текст талбар бүхий серверт холбогдох нэвтрэх цонхыг нээнэ. Би олон нэр оролдсон боловч олдсонгүй.

Би серверийн нэрийг хэрхэн олох/олж авах вэ?

Хичээл 1: Таны системд SQLEXPRESS болон LocalDB суулгасан эсэхийг шалгана уу. SQL SERVER Configuration Manager => SQL Server Service руу очно уу

Хэрэв SQL Server үйлчилгээнд юу ч заагаагүй бол дараах бүрэлдэхүүн хэсгүүдийг суулгана уу (64 битийн үйлдлийн системд зориулсан) 1. SqlLocalDB 2. SQLEXPR_x64_ENU 3. SQLEXPRADV_x64_ENU 4. SQLEXPRWT_x64_ENU

2-р хугацаа: Ашиглалтад оруулах. (Цэг) серверийн нэрэнд таалагдаж, "Холбох" дээр дарна уу [зургийн тайлбарыг энд оруулна уу] Дахин оруулна уу. \ SQLEXPRESS-ийг серверийн нэрээр сонгоод холболт дээр дарна уу

1.Та халдлагын командыг ажиллуулж болно.

EXEC xp_cmdshell "reg query "HKLM\Software\Microsoft\Microsoft SQL Server\Instance names\SQL"";
YTI

2. Vikoristannya vbudovannogo стандарт звиту.

жишээ сонгох -> дарна уу баруун товчлуурхулгана-> Дуудлага -> Стандарт дуудлага -> Dashbords сервер

Илүү ихийг олж мэдэх олон арга бий. Але, надад Використаг дуусгах энгийн арга бий (за, тийм ч хялбар биш @@SERVERNAME-г сонго). Хэрэв та Keruvan Studio-г SQL сервер болгон ажиллуулбал GUI-ийн доор сануулга харагдах болно

Тэнд Серверийн нэр нь таны серверийн нэртэй ижил байна (таны dev дундтай төстэй хэд хэдэн сервер байж болно, зөвийг нь сонго). Энэ тусална гэж найдаж байна :)

эмч нар ч мөн адил хэрэглэдэг

  • SQL жишээний нэр: MSSQLSERVER
  • Порт: 1433
  • Хост нэр: MyKitchenPC
  • IPv4: 10.242.137.227
  • DNS дагавар: dir.svc.mykitchencompany.com

Таны боломжтой серверийн нэр:

  • local\MSSQLSERVER
  • орон нутгийн, 1433\MSSQLSERVER
  • MyKitchenPC, 1433\MSSQLSERVER
  • 10.242.137.227,1433\MSSQLSERVER
  • MyKitchenPC.dir.svc.mykitchencompany.com, 1433\MSSQLSERVER

start -> CMD -> (Command бичих) SQLCMD -L эхний мөр - энэ нь серверийн нэр (локал) шиг серверийн нэр: YourPcName \ SQLEXPRESS

Нэрсийг арилгахын тулд энэ мөрийг ажиллуулна уу

Сарлаг таасан @Khaneddy2013, cmd SQLCMD -L тийм бишЭхлэх үед серверийн нэрийг эргүүлнэ. Bcz Би зөвхөн SSMS суулгасан (локал db болон сервер суулгаагүй). Дараа нь оролдоод үзсуурилуулалт SqlLocaLDBі SQLEXPR32_x86_ENU(32 битийн үйлдлийн систем) Би холбогдож чадсан. Одоо cmd цонх нь серверийн нэрийг харуулдаг.

Серверийн нэр нь компьютерийн нэртэй ижил боловч та "."-г ашиглаж болно. (Цэг) нь локал серверийн нэрийг орлоно.

Өөр нэг зүйл бол та SQL Server Express Edition суулгасан байж магадгүй гэдгийг анхаарах нь таны үүрэг юм. Чиний буруу хэнийх вэ” гэж хэлсэн. \sqlexpress" нь серверийн нэр юм.

Миний асуудал бол сууринд холбогдсон үед байсан SQL өгөгдөлХотын даргаас SERVERNAME-г олохыг хүснэ үү. Би SQL Management Studio програмын дунд (SELECT @@SERVERNAME) гэж бичсэн гэдгээ мэдэж байгаа бөгөөд reusl бол миний серверийн нэр юм. Би серверийн нэрийн талбарт орсон бөгөөд бүх зүйл хэвийн болсон.

Би өмнө нь ижил асуудалтай байсан.

"Сервертэй холбогдох" харилцах цонхонд стандарт тохиргоог эргүүлээд "Холбох" дээр дарна уу. Холбохын тулд серверийн нэрийн талбарт SQL сервер суулгасан компьютерийн нэрийг агуулсан байх ёстой. Өгөгдлийн сангийн систем нь нэрлэгдсэн жишээтэй тул Серверийн нэр талбар нь компьютерийн нэр\Жишээний нэр гэсэн форматтай жишээний нэрийг агуулж болно.

Жишээлбэл, би асуудлыг ийм байдлаар шийдсэн: би серверийн нэрийг бичсэн: Alex-PC\SQLEXPRESS

10

Миний ажлын компани MSSQL 2005 сервер ажиллуулдаг. Надад одоогийн бүртгэлийг таних хоёр сонголт болон урьдчилсан мэдэгдэл илгээх боломжтой.

Эхний сонголт бол T-SQL эсвэл SP ашиглан хэрэглэгчийн урсгалын нэр болон машины нэрийг хайх явдал юм. SQL серверийн нэрийг хэрхэн ашиглах талаар алсаас хандах SQL сервер, хэрэглэгчийн нэвтрэх нэрийг (цонхны нэвтрэх нэр) таних арга юу вэ?

Миний одоогийн хоол тэжээл: Би хэрэглэгчийн нэр эсвэл ID-г хэрхэн устгах вэ, энэ нь урьдчилсан мэдэгдэл илгээх арга юм, жишээ нь "энэ цагт SQL сервер цэвэрлэж байна эсвэл нөөц хуулбар, эелдэг бай, энэ цагт бүү нэвтэр," Чантли, энэ нь хэцүү биш юм. Магадгүй би Користувачева руу цахим хуудас илгээх боломж олдох байх.

SQL сервер нь компанид боломжгүй болсон. SQL сервер нь үйлчлүүлэгчдийн жагсаалтаас гадна нэвтрэх хэсэгт харуулдаг: Windows клиентүүд, Користувачи SQLта са.

  • 3 төрөл
  • Эрэмбэлэх:

    Үйл ажиллагаа

30

SUSER_SNAME(), HOST_NAME()-г сонго

Хэрэв та "sa" (эсвэл өөр ямар нэгэн SQL нэвтрэлт) руу холбогдсон бол домэйн/цонхны хэрэглэгчийн нэрийг олж чадахгүй. SQL сервер нь sa эсвэл SQL нэвтрэх гэж юу болохыг мэддэг.

HOST_NAME нь найдвартай биш байж болох ч холболтын мөрөнд ("Програмын нэрс") байрлуулж болно. Үгүй бол бид түлшний зарим хэсгийг тарааж болно, жишээлбэл, " Microsoft Office» Access, Excel гэх мэт сурталчилгаанд зориулсан.

Та sys.dm_exec_connections доторх client_net_address руу буцаж очих боломжтой бөгөөд энэ нь IP-ийн MAC хаягийг өгч, хэн шинэчлэгдсэнийг олж мэдээрэй...

4

Өөрийгөө хөтлөгч, хувь нэмэр оруулагч гэдгээ тодорхойлох хамгийн энгийн арга

EXEC sp_who2;

Үйлчлүүлэгч идэвхтэй байгаа гэх мэтийг мэдэхийн тулд та аль болох их мэдээлэл авдаг ... ямар ч асуудал байхгүй гэж gbn хэлэв.

3

Таны бүх саналд баярлалаа. Би бүх аргыг туршиж үзсэн бөгөөд Жоаким Бекманы арга миний хэрэгцээг хангаж байна гэж бодож байна. Энэ бол миний сурч байгаа зүйлийн товч хураангуй юм.

  • Бүртгэлийн мэдээллийг агуулсан sys.syslogins датаг хүсэх. Үүл бичлэг нь сурвалжлагчийн яг тодорхой цагийг заагаагүй болно. Би өөр SQL нэмэлт ашиглан системд нэвтрэх гэж оролдсон бөгөөд энэ хүсэлт нь нэвтрэлтийг дарж бичихгүй.
  • SELECT SUSER_SNAME(), HOST_NAME() нь SQL сервер дээр зөвхөн нэг бүртгэлийг харуулдаг. Жишээлбэл, би SQL серверийн хэрэглэгчийн нэрээр системд нэвтэрдэг. Энэ хүсэлтийн хариуг миний нэр болон машины нэрээс хасна. Энэ сануулга харагдахгүй байна бүтэн цагийн користувачууд SQL сервер дээр.
  • exec sp_who2 шаардлагатай мэдээллийг байрлуулна. Koristuvach-ийн урсгал нэрийн шинэ дахин даатгалтай, идэвхтэй стан, користувач дб тэр командын нэр рүү нэвтрэх.

SP-д хадгалагдсан мэдээллийг устгахын тулд би мэдээллийг шүүж, бусад хүснэгтэд нэмэх хэрэгтэй. цахим хуудас. Коди тэнхлэг, би використ учраас:

@retTable TABLE (SPID int no null , Status varchar (255) no null , Нэвтрэх varchar (255) null байхгүй, HostName varchar (255) null байхгүй, BlkBy varchar(10) null байхгүй, DBName var varchar (255) null байхгүй , CPUTime int null биш , DiskIO int null үгүй ​​, LastBatch varchar (255) null байхгүй , ProgramName varchar (255) null , SPID2 int null биш , REQUESTID INT) , HostName, DBName, Command, CPUTime, FROMName - * @- --"%"-д бүртгүүлэх шаардлагагүй ХААНА -- ингэснээр та Нэвтрэх, HostName-ээр ЗАХИАЛАХ гэсэн дээр дарах шаардлагагүй.