Làm th? nào đ? gi?i quy?t các v?n đ? quy?n khi b?n di chuy?n m?t cơ s? d? li?u gi?a các máy ch? đang ch?y SQL Server

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 240872 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài vi?t này mô t? làm th? nào đ? l?p b?n đ? các tiêu chu?n và đăng nh?p tích h?p đ? gi?i quy?t các v?n đ? quy?n khi b?n di chuy?n m?t cơ s? d? li?u gi?a các máy ch? đang ch?y SQL Server.

THÔNG TIN THÊM

Khi b?n di chuy?n m?t cơ s? d? li?u t? m?t máy ch? đang ch?y SQL H? ph?c v? đ?n m?t máy ch? đang ch?y SQL Server, m?t không phù h?p có th? x?y ra gi?a các b?o m?t s? nh?n d?ng (SIDs) c?a đăng nh?p trong các Th?c s? cơ s? d? li?u và ngư?i s? d?ng trong các ngư?i dùng cơ s? d? li?u. Theo m?c đ?nh, SQL Server 7.0, SQL Server 2000 và SQL Server 2005 cung c?p các sp_change_users_login h? th?ng lưu tr? th? t?c đ? ánh x? nh?ng ngư?i dùng không kh?p. Tuy nhiên, b?n có th? ch? s? d?ng các sp_change_users_login th? t?c đư?c lưu tr? đ? ánh x? tiêu chu?n SQL Server đăng nh?p và b?n ph?i th?c hi?n các l?p b?n đ? cho m?t ngư?i s? d?ng t?i m?t th?i đi?m. Đ? bi?t thêm thông tin v? các sp_change_users_login lưu tr? th? t?c, xem ch? đ? "sp_change_users_login" trong SQL Server 7.0, SQL Server 2000, và SQL Server 2005 sách tr?c tuy?n.

Trong SQL Server 7.0 hay Phiên b?n m?i nh?t, b?n có th? duy tr? ánh x? gi?a đăng nh?p trong các Th?c s? cơ s? d? li?u và ngư?i s? d?ng trong các ngư?i dùng cơ s? d? li?u b?ng cách s? d?ng SIDs. L?p b?n đ? này c?n thi?t đ? duy tr? đúng quy?n cho đăng nh?p trong các ngư?i dùng cơ s? d? li?u. Khi l?p b?n đ? này s? b? m?t, các tin đăng nh?p đư?c phép các v?n đ? đó bao g?m nhưng không gi?i h?n sau đây:
  • N?u SQL Server đăng nh?p không t?n t?i trên máy ch? m?i, và ngư?i dùng c? g?ng đăng nh?p, ngư?i dùng có th? nh?n đư?c l?i sau tin nh?n:
    Máy ch?: Msg 18456, c?p 16, nhà nư?c 1
    Đăng nh?p không th? cho ngư?i dùng '% ls'.
  • N?u đăng nh?p máy ch? SQL t?n t?i trên máy ch? m?i, nhưng các SID trong các Th?c s? cơ s? d? li?u khác t? SID trong các ngư?i dùng cơ s? d? li?u, ngư?i dùng có th? đăng nh?p vào máy ch? SQL thành công; Tuy nhiên, khi ngư?i dùng c? g?ng truy c?p cơ s? d? li?u đó, ngư?i dùng có th? nh?n các thông báo l?i sau:
    Máy ch?: Msg 916, t?ng 14, nhà nư?c 1, Line1
    Ngư?i s? d?ng h? ph?c v? ' %. * ls' không ph?i là m?t ngư?i s? d?ng h?p l? trong cơ s? d? li?u ' %. * ls'.
    Chú ý Trong SQL Server 2005, ngư?i dùng có th? nh?n đư?c các thông báo l?i sau:

    Ngư?i s? d?ng h? ph?c v? '% s' không ph?i là m?t ngư?i s? d?ng h?p l? trong cơ s? d? li?u '% s'. Thêm trương m?c ngư?i dùng vào cơ s? d? li?u l?n đ?u tiên.
Cho bi?t thêm thông tin v? các mô h?nh SQL Server 7.0 Security, Xem gi?y tr?ng "Microsoft sql Server 7.0 Security". Đ? xem tr?ng gi?y, ghé thăm Web site sau c?a Microsoft:
http://msdn2.Microsoft.com/en-US/Library/Aa226173 (SQL.70) .aspx
Đ? bi?t thêm chi ti?t v? mô h?nh SQL Server 2000 b?o m?t, b?m s? bài vi?t sau đ? xem bài vi?t trong cơ s? ki?n th?c Microsoft:
322712Microsoft SQL Server 2000 tính năng S322712 an ninh và th?c ti?n t?t nh?t

H?n ch?

  • N?u ngư?i dùng trong các sysusers b?ng mà không có m?t ti?n t? c?a tên máy tính ho?c tên mi?n mà s? h?u đ?i tư?ng, và các đ?i tư?ng đư?c tham chi?u trong các ?ng d?ng b?ng cách s? d?ng các tên hai ph?ntên ngư?i dùng.objectname, các ?ng d?ng có th? phá v? b?i v? các sp_sidmap đư?c lưu tr? th? t?c đ?i tên các ngư?i dùng v?i ti?n t? c?a các tên máy tính ho?c tên mi?n như nó xu?t hi?n trong các sysxlogins b?ng. Đ? làm vi?c xung quanh v?n đ? này, sau khi các sp_sidmap hoàn t?t th? t?c đư?c lưu tr?, đ?i tên nh?ng ngư?i đ? b? ?nh hư?ng trong s? d?ng các sysusers b?ng tên c? c?a h? ho?c liên h? v?i h? tr? chính c?a b?n nhà cung c?p.
  • Bài vi?t này không xem xét bí danh. B?n ph?i qu?n l? các bí danh b?ng tay.
  • N?u m?t tên đăng nh?p máy ch? SQL chu?n không t?n t?i trên các m?i Máy ch? SQL Server, b?n có th? thêm đăng nh?p v?i m?t kh?u NULL. B?n có th? ph?i thay đ?i m?t kh?u cho các tin đăng nh?p cho phù h?p.
  • N?u m?t ngư?i s? d?ng đ? đư?c t?o ra trong các ngư?i dùng cơ s? d? li?u v?i m?t tên khác t? đó xu?t hi?n trong các sysxlogins b?ng, không th? bi?t đăng nh?p tương ?ng cho r?ng ngư?i s? d?ng. V? v?y, trư?c khi b?n ch?y các sp_sidmap th? t?c đư?c lưu tr?:
    1. Chuy?n t?t c? các đ?i tư?ng ngư?i dùng này s? h?u m?t dàn cơ s? d? li?u.
    2. Th? ngư?i s? d?ng, thêm ngư?i dùng có tên chính xác, và sau đó chuy?n tr? l?i t?t c? các đ?i tư?ng cho ngư?i dùng này.
  • N?u m?t ngư?i s? d?ng đ? không m?t đăng nh?p tương ?ng c?ng như m?t ti?n t? c?a tên máy tính đ?a phương ho?c tên mi?n, b?n nh?n đư?c m?t tin nh?n cho ngư?i dùng này. Thông đi?p này ch? ra r?ng b?n ph?i đ?u tiên thêm ngư?i dùng lúc các Windows c?p và sau đó thêm nó vào các máy ch? SQL như m?t tên đăng nh?p. Sau khi b?n làm đi?u này, b?n ph?i ch?y các sp_sidmap th? t?c đư?c lưu tr? m?t l?n n?a.
  • N?u m?t ngư?i s? d?ng có m?t ti?n t? c?a m?t trong hai tên mi?n ho?c các tên h? ph?c v? Windows đ?a phương, nhưng đăng nh?p tương ?ng không t?n t?i trong các sysxlogins b?ng, các th? t?c đư?c lưu tr? c? g?ng thêm này như là m?t đăng nh?p m?i vào SQL Server. N?u ngư?i dùng Windows không t?n t?i, nó t?o ra m?t thông báo đ?u ra trong c?a s? k?t qu? và sau đó t? t?o đăng nh?p sau khi nó l?n đ?u tiên thêm ngư?i dùng Windows.
  • N?u có nhi?u hơn m?t đăng nh?p cho ngư?i dùng trong các sysusers b?ng, b?n th?y thư đ?u ra, các t?p tin k?t qu? và nó s? li?t kê t?t c? các đăng nh?p có cùng tên ngư?i dùng. T?i th?i đi?m này, b?n ph?i t? can thi?p đ? đ?m b?o r?ng ngư?i dùng tương ?ng v?i ch? có m?t đăng nh?p.

    Ví d? Nếu sysusers b?ng này có m?t ngư?i dùng có tên "johndoe" và các sysxlogins b?ng đ? đăng nh?p v?i tên như là "test\johndoe" và "test2\johndoe", khi b?n ch?y các th? t?c đư?c lưu tr?, b?n nh?n đư?c m?t tin nh?n mà nói r?ng m?t trong nh?ng ngư?i dùng đ? đăng nh?p nhi?u hơn m?t và r?ng h? th?ng Ngư?i qu?n tr? ph?i ch?n m?t. Đây là ch? th?i gian mà b?n ph?i ch?y th? hai th? t?c đư?c lưu tr?, sp_prefix_sysusersname, mà đư?c cung c?p trong bài vi?t này. Ngoài ra, t?nh h?nh này đư?c mô t? chi ti?t trong Readme.txt file.

B?n đ? tiêu chu?n và tích h?p tin đăng nh?p

Sau khi b?n di chuy?n m?t cơ s? d? li?u t? m?t máy ch? đang ch?y SQL Máy ch? máy ch? đ?n m?t máy ch? đang ch?y SQL Server máy ch?, làm theo các bư?c cho s? can thi?p c?a ngư?i s? d?ng t?i thi?u:

SQL Server 7.0 và SQL Server 2000

  1. Ch?c ch?n r?ng có m?t đăng nh?p trong các sysxlogins b?ng trong các Th?c s? cơ s? d? li?u cho m?i ngư?i dùng trong các sysusers b?ng cơ s? d? li?u.

    Chú ý Đ? thêm m?t đăng nh?p máy ch? SQL chu?n, xem các ch? đ? "sp_addlogin" trong SQL Server sách tr?c tuy?n. Đ? thêm m?t tích h?p SQL Server đăng nh?p, h?y xem các ch? đ? "sp_grantlogin" trong SQL Server sách tr?c tuy?n.
  2. T?i các t?p tin MapSids.exe, và sau đó gi?i nén các T?p Sp_sidmap.SQL và Readme.txt.
  3. Đăng nh?p vào máy ch? đang ch?y SQL Server như m?t h? th?ng ngư?i qu?n tr?, và sau đó ch?y Sp_sidmap.sql t?p tin trong cơ s? d? li?u ngư?i dùng. Ch?y các t?p tin Sp_sidmap.sql t?o ra hai th? t?c đư?c lưu tr?, sp_sidmapsp_prefix_sysusersname.
  4. Đ?m b?o r?ng cơ s? d? li?u không đư?c truy nh?p b?i b?t k? khác ngư?i s? d?ng hơn so v?i nh?ng ngư?i đang ch?y các th? t?c đư?c lưu tr?.
  5. H?y ch?c ch?n r?ng truy v?n Analyzer hi?n th? k?t qu? trong văn b?n đ?nh d?ng và không trong lư?i đ?nh d?ng. Đ? th?c hi?n vi?c này, ho?c b?m cácCTRL ^ T phím, ho?c nh?p chu?t Truy vấn, và sau đó nh?p vào K?t qu? trong văn b?n. Đi?u này là r?t quan tr?ng do đó b?n có th? xem các k?t qu? và các thông tin thư trong m?t c?a s? và lưu đ?u ra vào m?t t?p tin văn b?n. B?n có th? c?n tranh sau đó đ? gi?i quy?t m?t s? các ánh x?.
  6. V? b?n không th? xác nh?n cho dù các thông s? đư?c thông qua m?t cách chính xác, h?y ch?c ch?n đ? chuy?n chúng m?t cách chính xác đ? các sp_sidmap th? t?c đư?c lưu tr?:
    EXEC sp_SidMap @old_domain = old_domain_name,
    @new_domain = new_domain_name,
    @old_server = old_server_name,
    @new_server = new_server_name
    Thay th? các giá tr? cho các tên mi?n c? và m?i và tên h? ph?c v? m?t cách thích h?p.
  7. Lưu k?t qu? trong m?t t?p tin và làm theo các hư?ng d?n mà đư?c cung c?p trong Readme.txt file.

    Chú ý Khi b?n ch?y các th? t?c đư?c lưu tr?, các sysusers bàn là b?ng ch? r?ng nh?ng thay đ?i trong cơ s? d? li?u. Đ? tr? v? đ? m?t bang nơi b?n b?t đ?u, khôi ph?c l?i cơ s? d? li?u t? b?n sao lưu ho?c reattach cơ s? d? li?u.

SQL Server 2005

N?u b?n đang ch?y SQL Server 2005, s? d?ng các V?I ĐĂNG NH?P đi?u kho?n c?a các ALTER NGƯ?I DÙNG tuyên b? c?a remap m?t ngư?i s? d?ng m?t đăng nh?p m?i. Đ? bi?t thêm chi ti?t, ghé thăm Web site sau c?a Microsoft Developer Network (MSDN):
http://MSDN.Microsoft.com/en-US/Library/ms176060.aspx
Chú ý S? d?ng các V?I ĐĂNG NH?P đi?u kho?n c?a các ALTER NGƯ?I DÙNG tuyên b?, b?n ph?i áp d?ng SQL Server 2005 Service Pack 2.

THAM KH?O

Đ? bi?t thêm chi ti?t, nh?p vào s? bài vi?t sau đ? xem các bài vi?t trong cơ s? ki?n th?c Microsoft:
274188"Gi?i đáp th?c m?c m? côi ngư?i dùng" ch? đ? trong cu?n sách tr?c tuy?n là không đ?y đ?
246133 Làm th? nào đ? chuy?n các tin đăng nh?p và m?t kh?u gi?a các trư?ng h?p c?a SQL Server
168001 Ngư?i dùng đăng nh?p và/ho?c s? cho phép l?i sau khi khôi ph?c k?t xu?t
298897 M?U: Mapsids.exe giúp Map SIDs gi?a ngư?i s? d?ng và cơ s? d? li?u Master khi cơ s? d? li?u di chuy?n

Thu?c tính

ID c?a bài: 240872 - L?n xem xét sau cùng: 01 Tháng Chín 2011 - Xem xét l?i: 3.0
Áp d?ng
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 64-bit Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Workgroup Edition
T? khóa: 
kbsqlsetup kbhowtomaster kbmt KB240872 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:240872

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com