SQLServer 数据库镜像+复制切换方案
目标: 主机做了 Mirror 和 Replication ,当主机出现问题时, Replication 和 Mirror 实现自动的故障转移( Mirror 和 Replication 都切换到备机,而当主机 重新启动后,自动充当备机的角色)。 环境: 五台虚拟机,配置均为 Windows2008 Enterprise SQLSer
目标:
主机做了Mirror和Replication,当主机出现问题时,Replication和Mirror实现自动的故障转移(Mirror 和Replication都切换到备机,而当主机
重新启动后,自动充当备机的角色)。
环境:
五台虚拟机,配置均为Windows2008 Enterprise + SQLServer2008R2 Enterprise
08R201:Mirror见证机(WITNESS) IP:192.168.56.101
08R202:主机(Rep+Mirror) IP:192.168.56.102
08R203:Rep分发机 IP:192.168.56.103
08R204:Rep订阅机 IP:192.168.56.104
08R205:镜像机(Mirror) IP:192.168.56.105
步骤:
配置有见证服务器的镜像
1、创建证书和Endpoint
08R202(Master) 上运行下面的脚本:
主机执行:USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456abc'; CREATE CERTIFICATE HOST_A_cert WITH SUBJECT = 'HOST_A certificate' , START_DATE = '11/08/2010',EXPIRY_DATE = '10/31/2099'; --主机执行:CREATE ENDPOINT Endpoint_Mirroring STATE = STARTED AS TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION = CERTIFICATE HOST_A_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); --主机执行: BACKUP CERTIFICATE HOST_A_cert TO FILE = 'D:HOST_A_cert.cer';
08R205(Mirror) 上运行下面的脚本:
备机执行:USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456abc'; CREATE CERTIFICATE HOST_B_cert WITH SUBJECT = 'HOST_B certificate', START_DATE = '11/08/2010',EXPIRY_DATE = '10/31/2099'; --备机执行:CREATE ENDPOINT Endpoint_Mirroring STATE = STARTED AS TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION = CERTIFICATE HOST_B_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ); --备机执行:BACKUP CERTIFICATE HOST_B_cert TO FILE = 'D:HOST_B_cert.cer';
08R201(WITNESS)上运行下面的脚本:
Replicaiton不做具体的搭建过程,只做几点说明:
1. 08R202和08R205都需要搭建到08R203的Distribution;
2. 08R202和08R205上的发布库的所有者必须为“SA”,否则切换会出现如下错误:The process could not execute‘sp_replcmds’ on ‘WIN-08R205′.
3. 08R203分发机上配置文件需要做如下修改(配置故障转移Partner):
配置复制故障转移参数--查看代理配置,在分发服务器运行exec sp_help_agent_profile --Agent_Type含义--1 = Snapshot Agent; 2 = Log Reader Agent; 3 = Distribution Agent; --4 = Merge Agent; 9 = Queue Reader Agent.--对于事务复制,需查看Agent_Type=1,2的Profile_id--对于事务复制,需要配置快照代理(Snapshot Agent)和日志读取代理(Log Reader Agent)exec sp_add_agent_parameter @profile_id = 1, @parameter_name = N'-PublisherFailoverPartner', @parameter_value = N'WIN-08R205'--镜像服务器名称exec sp_add_agent_parameter @profile_id = 2, @parameter_name = N'-PublisherFailoverPartner', @parameter_value = N'WIN-08R205'--镜像服务器名称
修改完成后,记得重启Agent服务,使之生效。
4. 从08R202创建到08R204的同步链。
模拟故障转移并观察结果
1. 暂停08R202的SQLServer服务;
2. 到08R205上观察镜像和同步链是否转移过去了;
3. 如果同步链正常,修改某个表中的数据,看是否能同步到08R204上;
4. 重新启动08R202的SQLServer服务,看其是否成为了镜像机;
5. 如果一起都正常,那恭喜啦,我们的测试成功。
更多相关教程请访问 MySQL视频教程

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Langkah import adalah seperti berikut: Salin fail MDF ke direktori data SQL Server (biasanya C:\Program Files\Microsoft SQL Server\MSSQL\DATA). Dalam SQL Server Management Studio (SSMS), buka pangkalan data dan pilih Lampirkan. Klik butang Tambah dan pilih fail MDF. Sahkan nama pangkalan data dan klik butang OK.

Perbezaan sintaks antara MySQL dan SQL Server terutamanya ditunjukkan dalam objek pangkalan data, jenis data, pernyataan SQL dan aspek lain. Perbezaan objek pangkalan data termasuk enjin storan dan cara kumpulan fail ditentukan, dan penciptaan indeks dan kekangan. Perbezaan jenis data melibatkan perbezaan dalam jenis angka, jenis aksara, dan jenis tarikh dan masa. Perbezaan pernyataan SQL ditunjukkan dalam had set hasil, sisipan data, kemas kini dan operasi padam, dsb. Perbezaan lain termasuk cara lajur identiti, paparan dan prosedur tersimpan dibuat. Memahami perbezaan ini adalah penting untuk mengelakkan ralat apabila menggunakan sistem pangkalan data yang berbeza.

Pemetaan polimorfik hibernate boleh memetakan kelas yang diwarisi ke pangkalan data dan menyediakan jenis pemetaan berikut: subkelas bercantum: Cipta jadual berasingan untuk subkelas, termasuk semua lajur kelas induk. table-per-class: Cipta jadual berasingan untuk subkelas, yang mengandungi hanya lajur khusus subkelas. union-subclass: serupa dengan joined-subclass, tetapi jadual kelas induk menggabungkan semua lajur subclass.

Keluaran terbaharu Apple bagi sistem iOS18, iPadOS18 dan macOS Sequoia telah menambah ciri penting pada aplikasi Photos, yang direka untuk membantu pengguna memulihkan foto dan video yang hilang atau rosak dengan mudah disebabkan pelbagai sebab. Ciri baharu ini memperkenalkan album yang dipanggil "Dipulihkan" dalam bahagian Alat pada apl Foto yang akan muncul secara automatik apabila pengguna mempunyai gambar atau video pada peranti mereka yang bukan sebahagian daripada pustaka foto mereka. Kemunculan album "Dipulihkan" menyediakan penyelesaian untuk foto dan video yang hilang akibat kerosakan pangkalan data, aplikasi kamera tidak disimpan ke pustaka foto dengan betul, atau aplikasi pihak ketiga yang menguruskan pustaka foto. Pengguna hanya memerlukan beberapa langkah mudah

Lokasi di mana fail konfigurasi pangkalan data Navicat disimpan berbeza mengikut sistem pengendalian: Windows: Laluan khusus pengguna ialah %APPDATA%\PremiumSoft\Navicat\macOS: Laluan khusus pengguna ialah ~/Library/Application Support/Navicat\Linux: Laluan khusus pengguna ialah ~/ .config/navicat\Nama fail konfigurasi mengandungi jenis sambungan, seperti navicat_mysql.ini. Fail konfigurasi ini menyimpan maklumat sambungan pangkalan data, sejarah pertanyaan dan tetapan SSH.

Cara menggunakan MySQLi untuk mewujudkan sambungan pangkalan data dalam PHP: Sertakan sambungan MySQLi (require_once) Cipta fungsi sambungan (functionconnect_to_db) Fungsi sambungan panggilan ($conn=connect_to_db()) Laksanakan pertanyaan ($result=$conn->query()) Tutup sambungan ( $conn->close())

Untuk mengendalikan ralat sambungan pangkalan data dalam PHP, anda boleh menggunakan langkah berikut: Gunakan mysqli_connect_errno() untuk mendapatkan kod ralat. Gunakan mysqli_connect_error() untuk mendapatkan mesej ralat. Dengan menangkap dan mengelog mesej ralat ini, isu sambungan pangkalan data boleh dikenal pasti dan diselesaikan dengan mudah, memastikan kelancaran aplikasi anda.

HTML tidak boleh membaca pangkalan data secara langsung, tetapi ia boleh dicapai melalui JavaScript dan AJAX. Langkah-langkah termasuk mewujudkan sambungan pangkalan data, menghantar pertanyaan, memproses respons dan mengemas kini halaman. Artikel ini menyediakan contoh praktikal menggunakan JavaScript, AJAX dan PHP untuk membaca data daripada pangkalan data MySQL, menunjukkan cara untuk memaparkan hasil pertanyaan secara dinamik dalam halaman HTML. Contoh ini menggunakan XMLHttpRequest untuk mewujudkan sambungan pangkalan data, menghantar pertanyaan dan memproses respons, dengan itu mengisi data ke dalam elemen halaman dan merealisasikan fungsi HTML membaca pangkalan data.
