Hicham Al Sayed ahmed

اهلا و سهلا بكم في منتدى تقنيات الحاسوب 2013

منتدى و عالم تقنيات الحاسوب و البرمجة وانظمة التشغيل و الصيانة 2013

تؤمن لكل من يحب ان يتعلم البرمجة و كل من يدرس في هذا الاختصاص برامج و مواضيع و افكار جديدة و كيفية العمل و الكثير و الكثير و ايضا تتيح لاي شخص ان ينضم لهذا المنتدى و خاصة طلاب تقنيات الحاسوب و انظمة التشغيل و الصيانة المادية و البرمجية
تعلم الفجوال بيسك - الدلفي - السي ++ - الباسكال و الكثير و الكثير

اطرح سؤالك على فريق العمل في الفيسبوك

تابعنا على الفيسبوك

مشاركة الموضوع عبر الفيسبوك

Log in

I forgot my password

Top posting users this week

Who is online?

In total there is 1 user online :: 0 Registered, 0 Hidden and 1 Guest

None


Most users ever online was 85 on Tue Nov 05, 2013 5:00 am

تابعنا على الفيسبوك


إنشاء قاعدة

Share
avatar
عفريت السويداء
عضو مميز
عضو مميز

نقاط : 1157

default إنشاء قاعدة

Post by عفريت السويداء on Wed Dec 21, 2011 1:37 pm



إنشاء
القاعدة :


سنتعلم في هذا الجزء
كيف نقوم بإنشاء قاعدة أوراكل ، و لكي ننشىء القاعدة يجب أن نعود لما
تحدثنا عنه في الفقرة القادمة و نتحدث عن :
1-
Control file :

كما قللت : هو الملف الأساسي للقاعدة ، و لا
قاعدة بدونه ، لماذا ؟
السبب أن Oracle Instance يتعرف على القاعدة عن
طريق هذا الملف ، أي عند تشغيل النظام و في مرحلة نسميها mount يقوم
Instance بقراءة هذا الملف لكي ؟؟؟
لكي يعرف أين الملفات التي تخزن
البيانات Data الخاصة بالجدوال التي نتعامل معها .، أين سجلات الإرجاع ..
إلخ هل وصلت الفكرة .. أتمنى ذلك .
بما أن هذا الملف هو مهم لهذه
الدرجة فيجب دوماُ أن نقوم بعملية نسميها multiplex أي الإحتفاظ بأكثر من
نسخة منه في عدة أقسام .. لماذا ؟؟ ببساطة إذا حدث أي شيء لهذا الملف : حذف
أو عطب ... إلخ ضاعت كل القاعدة و لن يستطيع Oracle instance التعامل معها
.. لذلك نحتفظ بأكثر من نسخة فإذا حذث أي شيء لأي نسخة فتوجد نسخة أخرى
للتعامل معها ...
يتم تحديد مسار Control file داخل ملف parameter file
(Spfile , Pfile ) ....
2- Redo log :
و
هي ملفات الإرجاع ... شو يعني ؟؟
كلنا يعرف برنامج وورد مثلاً : يمكنك
التعامل مع المستند بأن تكتب ما تشاء و تحذف ما تشاء و في النهاية يمكنك
التراجع عن ما فعلته .. صحيح ؟؟؟
و كذلك بالنسبة لقاعدتنا العزيزة :
يمكنك القيام بحذف سجلات و إضافة سجلات و تعديل سجلات ...إلخ ماذا لو أرادت
مؤسسة الكهرباء ممزاحتك و قطعت لك الكهرباء ؟؟؟ و كل هذه التعديلات كانت
مجرد لعب عيال ؟؟؟
إن Oracle instance في هذه الحالة يستخدم هذه
الملفات لإعادة كل شيء لطبيعته السابقة ...
3-
Data file

: و هنا موضع الفرس .. و أخيراً : ملفات تخزين
البيانات ، أي جميع البيانات التي تضعها في الجداول المختلفة تجدها في هذه
الملفات ...
إذاً ما نفهمه من الكلام السابق القاعدة في أوراكل ليست
كما في أكسس ملف واحد يمكنك نقله إينما كان ووضعه ثم العمل عليه ، إضافة
إلى ذلك كثير من المطورين سألون : هل أنا مضطر إلى تنصيب أوراكل عندما أريد
أن يعمل برنامجي على جهاز آخر و يكفي أن أنقل بعض الملفات ؟ الجواب : لا
... يجب أن يوجد : Oracle Instance و Database files و هذا لا يتم إلا
بتنصيب Oracle Server ...

الآن : كفانا من
الكلام النظري و لننشء قاعدة جديدة :

سنتخدم في إنشاء القاعدة
أداة رائعة و هي Database Configuration Assistants ) : DBCA ) : تضمن هذه
الأداة إنشاء قاعدة جديدة أو إزالة قاعدة بيانات موجودة أو تعديل قاعدة
بيانات ... إلخ .
لنفذ الخطوات التالية :
1- من
start->programs
->Oracle10g->Configuration and Migration Tools -> Database
Configuration Assistants .
تظهر الواجهة مرحبة بنا على طريقة أوراكل (
بدون القهوة العربية ) نختار Next .
2- نختار الخيار الأول Create
Database .
3- تظهر لنا أنواع من قواعد البيانات دعوني أشرحها :
1-
Data Ware House : من أروع الأنواع التي أحب التعامل معها ( بفعل خبرتي
العملية ) .. هذه النوع موجه نحو القواعد التي تحوي على كميات ضخمة من
البيانات التي تضمن سرعة خارقة في جلب البيانات من جدوال قد تحوي بلايين من
السجلات ... لهذا النوع أبحاث كثيرة نظراً لأهميته البالغة
2-Transaction
Processing : و هي موهة للقواعد التي تخضع لضغط عالي من التعديلات و
الإدخالات الجديدة و تضم القليل من عمليات إحضار البيانات ..

3-
General Purpose : موجهة إلى القواعد العادية ذات الغرض العام ( كما في
حالتنا مثلاً ) ...

لذلك نختار General Purpose ثم التالي ..
4-
لدينا قيمتين :
1- اسم القاعدة : Global Database Name ..
2- SID :
اسم instance الذي سيتعامل مع هذه القاعدة ..
يمكن أن يختلف الإسمين
عن بعضهما :
مثال : في عملي لدي شبكة دومين Aledari.com لذلك أستطيع
تسمية القاعدة بالشكل : Accounting.aledari.com بينما اسم Instance لدي هو
AccInst ..
للتذكير فقط : في الوضع الإفتراضي فإنك عندما تنصب أوراكل
فإنه ينشئ قاعدة بيانات و Instance اسميهما متطابقين أي orcl ...
لنتفق
على اسم واحد لإستعماله :
Global Database Name :
DBACLASS.arabteam.com
SID : DBACLASS
ثم Next ..
5- يوجد عدد من
الخيارات :
لنتأكد من أن الخيار Configure the database using
enterprise manger مفعلاُ حين أن Enterprise Manager هي أداة رائعة تمكننا
من إدارة القاعدة بواجهة تفاعلية ممتازة ..
ثم Next ..
6- يطلب منا
وضع كلمة السر واحدة للمستخدمين :Sys , System , SYSMAN أو أن نضع لكل
مستخدم كلمة مرور خاصة به ...
ضع ما تشاء ثم Next ..
7- نختارFile
System ( أي نظام الملفات الحالي الذي يستخدمه نظام التشغيل ) ... ثم Next
..
8-نختار توضع ملفات القاعدة :
1- use file allocations from
Template : هنا يجب وجود إعدادات مسبقة قمنا بنجهيزها من قبل داخل Template
..
2- Use Common Location for all Database Files : هنا نحدد مسار
مجلد ما ليكون الحاوي لجمييع ملفات القاعدة ..
3- Use Oracle-Manged
Files : هناك طريقة نسميها OMF و هي طريقة Standard تتبعها أوراكل في تسمية
الملفات الخاصة بالقاعدة أي أن DBA يتنحى جانباً و تقوم أوراكل بتسمية
الملفات و تحديد مواقعها بدلاً عنه ...
لنختر الخيار الثاني ثم Next ..

9 – تظهر لنا خيارات النسخ الإحتياطي للقاعدة Backup سواء بالنسبة إلى
Flash Recovery ( من أروع الإضافات التي شهدها الإصدار 10g ) أو Archiving
Redo log ..
نضغط على Next ..
10-تظهر واجهة يمكننا إختيار Sample
Schema لتثبيت مخططات مثل Scott-hr ...
نختار Next ..
11- نحدد
بارامترات خاصة ب Oracle instance ... ما يهمنا هنا هو characterset و هي
الترميز الذي سيتم إستخدامه في تخزين البيانات داخل القاعدة و هو يلعب
دوراً كبيراً في مسألة تخزين البيانات العربية أو لغات الشرق الأقصى مثل
اليابانية و غيرها ... المهم بالنسبة لنا أن يكون هذا الترميز مناسباً
للبيانات العربية لذلك من القسم Database Character Set يمكننا :
1-
إختيار Using Unicode : من أجل الترميز Unicode الذي يلائم لغتنا العربية
..
2- إختيار Choose from a list of character set : و بوسعنا إختيار
هنا AR8MSWIN1256 من أجل العربية ...
من الخيارين Default Language و
Default Data Format نحدد بهما لغة الرسائل و تنسيق التاريخ ...
ثم
Next ..
12- تظهر واجهة مهمة : إضغط على الزر File Allocation Variable
: ستجد هناك مجموعة من المسارات المخزنة داخل متحولات : Oracle_Base ..
Oracle Home .. SID .. إلخ يجب أن تحفظ هذه المسارات عن ظهر قلب لأنها
مواقع الملفات التي سنتعامل معها لاحقاً ...
إخرج من هذه الواجهة ثم
next ..
13- تظهر لك خيارات :
create Database : من أجل إنشاء قاعدة
جديدة و هذا ما نريده ..
save As Database Template : أي نحفظ
الإعدادات التي نقد نستعملها لاحقاً في إنشاء قاعدة أخرى ...
نضغط على
زر finish ( و أخيراً ) للبدء في إنشاء القاعدة ....


عندما
ينتهي يظهر لك واجهة تخبرك عن أمور هامة و يجب حفظها و أولها مسار
Enterprise Manager
الذي سيكون في الغالب على الشكل :

كود




إكتب هذا المسار
على الحيط أو على جبينك أو على الشاشة أو مكان ما تريد ... المهم لا تنساه
....
يمكنك الضغط على الزر Password Management لكي ترى Users الذين تم
إنشاءهم إفتراضياُ و بذلك يمكنك تغيير كلمات سرهم أو فيتح حساباتهم المقفلة
بشكل إفتراضي .. إفعل ماشئت ثم إضغط على الزر Ok ثم Exit و بذلك يكون قد
أصبح لديك قاعدة جديدة ... " ألف مبروك تتربى في دلالك و عزك " ....

ملاحظة هامة جداً جداً : مما رأينا نستطيع إنشاء
أكثر من قاعدة بيانات بتكرار الخطوات التي ذكرناها بحيث في كل مرة يتم
إنشاء قاعدة بالإضافة إلى Instance الخاص بها و هكذا ....
و السؤال
الذي يطرح نفسه : كيف نحدد من هي القاعدة التي نتعامل معها عند تشغيل تطبيق
مثل SQL plus مثلاً ...

الجواب :
نذهب
إلى المسار التالي :

كود

Oracle _Home \ Network\admin\tnsnames.ora



سأضع لكم ما
يحويه tnsnames.ora في جهازي :

كود

Accounting =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER
= DEDICATED)
(SERVICE_NAME = Accounting.aledari.com
)
)
DBCLASS
=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =
localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME
= DBCLASS.arabteam.com)
)
)



بحيث تأخذ الشكل التالي :

كود

Connection_Host=
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)(HOST = PC_NAME "اسم الجهاز الذي يحوي القاعدة " )(PORT =
1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME
=GLOBAL_DATABASE_NAME)
)



كما تلاحظون فلدي قاعدتين : Accounting و
DBCLASS التي قمنا بإنشاءها ...
ما يهمنا هو connection Host (سلسة
المضيف ) أي عندما أريد أن أسجل الدخول على SQL PLUS و التعامل مع قاعدتنا
DBCLASS سأكتب

كود

connection
Host DBCLASS



أما إذا أردت الدخول على القاعدة الثانية
Accounting :

كود

connection
Host Accounting



أرجو أن تكون الفكرة قد وصلت .....
و بذلك
أخواني و أخواتي انتهى درسنا في إنشاء قاعدة بيانات جديدة و أرجو أن يكون
قد حاز على إعجاب الجميع ... إذا كان هنالك أي سؤال فأنا مستعد للإجابة
بعون الله ...
بالتوفيق للجميع
avatar
al-Master

نقاط : 123

default Re: إنشاء قاعدة

Post by al-Master on Fri Jan 06, 2012 6:36 pm

شكرا على هذا الموضوووع الجميل drunken

    Current date/time is Wed Nov 21, 2018 1:22 am