أريد أن أقوم بتبديل قاعدة البيانات بقاعدة أخرى تم انشاؤها
المطلوب اعدادت ربط نما بقاعدة بيانات جديدة
أيضا مطلوب خطوات عمل قاعدة بيانات جديدة فاضية وخطوات ربطها بالنظام
أريد أن أقوم بتبديل قاعدة البيانات بقاعدة أخرى تم انشاؤها
المطلوب اعدادت ربط نما بقاعدة بيانات جديدة
أيضا مطلوب خطوات عمل قاعدة بيانات جديدة فاضية وخطوات ربطها بالنظام
لتبديل النسخة التجريبية للعمل على قاعدة بيانات جديدة فارغة، نحتاج خطوتين: أولاً إنشاء قاعدة البيانات على SQL Server وضبط إعدادات العزل (Isolation) الخاصة بها، ثم تعديل ملف الإعدادات الخاص بخادم Tomcat ليشير إلى القاعدة الجديدة.
افتح SQL Server Management Studio ونفّذ الاستعلام التالي، مع استبدال DB_NAME بالاسم الذي تريده لقاعدة البيانات الجديدة:
-- إنشاء قاعدة البيانات
-- ---------------
create database DB_NAME;
GO
-- ضبط مستوى العزل (Isolation Level)
-- -------------------
USE [master];
DECLARE @kill varchar(8000) = '';
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'
FROM sys.dm_exec_sessions
WHERE database_id = db_id('DB_NAME')
EXEC(@kill);
ALTER DATABASE DB_NAME SET READ_COMMITTED_SNAPSHOT ON;
ALTER DATABASE DB_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;
ALTER DATABASE DB_NAME SET MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT ON;
ملاحظة: ضبط إعدادات العزل الثلاثة أعلاه مهم جداً لعمل نما بشكل صحيح، فلا تتجاهلها.
اسم قاعدة البيانات التي يتصل بها النظام موجود في ملف إعدادات Tomcat:
C:\Program Files\Apache Software Foundation\Tomcat 10.1\conf\context.xml
افتح هذا الملف وابحث عن السطر الخاص بمصدر البيانات (Resource) الخاص بنما:
<Resource name="jdbc/nama" auth="Container" type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxActive="10000"
maxIdle="20" maxWait="10000" username="sa" password="XXXXXXXXXXXX"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" validationQuery="SELECT 1"
testWhileIdle="true"
url="jdbc:sqlserver://localhost:1433;database=OLD_DB_NAME;encrypt=true;trustServerCertificate=true;"
timeBetweenEvictionRunsMillis="24000000" testOnBorrow="true"/>
في خاصية url ستجد الجزء database=OLD_DB_NAME — استبدل OLD_DB_NAME باسم قاعدة البيانات الجديدة (DB_NAME) التي أنشأتها في الخطوة الأولى.
تأكد أيضاً من صحة باقي بيانات الاتصال في نفس السطر:
localhost:1433 — عنوان خادم SQL Server والمنفذ.username و password — اسم المستخدم وكلمة المرور الخاصة بـ SQL Server.إذا كان لديك نسخة احتياطية جاهزة وتريد التحويل إليها، فالأمر أبسط ويتم في خطوتين فقط:
context.xml باسم قاعدة البيانات المسترجعة.وبهذا لا تحتاج لإنشاء قاعدة بيانات جديدة، لأن النسخة المسترجعة تكون جاهزة بإعداداتها.
بعد حفظ ملف context.xml، أعد تشغيل خدمة Tomcat حتى يقرأ النظام الإعدادات الجديدة ويتصل بقاعدة البيانات الجديدة. ستجد عند الدخول قاعدة بيانات فارغة جاهزة للعمل عليها.