مقدمه
تمامی دانشجویان رشته های فنی ملزم به گذراندن چند واحد عملی کارورزی در پایان دوره تحصیلات شان هستند. که برای رشته تحصیلی ما 3واحد درسی محسوب میشود. جهت گذراندن دوره کارورزی در رشته کارشناسی ناپیوسته کامپیوتر- نرم افزار در شرکت نسران (واحد انفورماتیک) به مدت 360 ساعت مشغول به کاروزی بودم که فعالیت هایی از قبیل کار با شبکه های کامپیوتری ، نرم افزارهای مختلف از جمله SQL Server و ایجاد وب سایت را انجام دادم ودر پایان جهت سنجش آموخته ها یک وب سایت نیز طراحی نمودم. پس از پایان دوره کارورزی جهت ادامه همکاری در این شرکت استخدام شدم.
دراین گزارش، ابتدا به معرفی مرکز کارورزی ، مشخصه ها و فعالیتهای شرکت پرداخته شده است و سپس در رابطه با مسئولیت و کارهایی که در این مجموعه انجام داده ام مطالبی آورده ام.
این گزارش کار جهت ارائه به مؤسسه آموزش عالی صدرالمتالهین(صدرا) تدوین گردیده تا گواهی بر پایان دوره کاروزی اینجانب باشد.
معرفی مرکز کارورزی
نسران (سهامی خاص) شرکتی است که بصورت حرفهای و تخصصی در رابطه با اجرای طرحهای بزرگ ساختمانی و صنعتی از قبیل (سد، نیروگاه، پالایشگاه، فرودگاه، دانشگاه، بیمارستان، بزرگراه، راه، پل، راهآهن، اسکله، کارخانه سیمان، خطوط نفت و گاز، مجتمعهای پتروشیمی، ابنیه، شهرسازی و بناهای فرهنگی و مذهبی) فعالیت مینماید.
این شرکت در سال 1366 با عنایت به اهداف ذیل تاسیس گردید:
توجه به نقش اساسی و محوری کارمندان و نیروی انسانی بعنوان ارزشمندترین سرمایه شرکت و نهایت تلاش جهت آموزش و بهبود شرایط کاری ایشان.
اعتقاد به بهرهگیری از روشهای نوین مدیریت علمی در اجرای اهداف شرکت و اجرای گروهی آن با توجه به هماهنگی بین مسئولین و کارشناسان زیربط.
رعایت مباحث مربوط به ایمنی و بهداشت حرفهای و محیط زیست در کارگاههای مختلف شرکت به جهت حفظ سلامت نیروی انسانی.
تامین نیازهای کارفرمایان و مشاوران شرکت با هدف حسن اجرای تعهدات و تامین رضایت ایشان.
تلاش در جهت ارائه خدمات با کیفیت بالا و ارتقاء سطح کمی و کیفی خدمات موضوع شرکت.
تقسیم صحیح کار و ایجاد ارتباطات سازمانی صحیح، روشن و اصولی در میان پرسنل شرکت.
برنامهریزی طبق اهداف از پیش تعیین شده شرکت و ضابطهمند کردن امور جاری و فرآیندها در راستای افزایش بهرهوری و استفاده بهینه از امکانات مشترک پروژهها.
حفظ و نگهداری از اموال و ماشینآلات و بهرهبرداری بهینه از تجهیزات به منظور اجرای تعهدات به کارفرمایان.
این شرکت در راستای اهداف کیفی و ماموریتهای کاری خود و با نظر به اهداف فوق توانسته است گام مثبتی در جهت تحقق برنامههای آتی شرکت برداشته و شهرت و سرآمدی خود را مدیون نوع روش کار و خط مشی حاکم بر شرکت میداند.
در این راستا نسران (سهامی خاص) توانسته است تا با ایجاد محیطی پویا و سازماندهی مناسب پذیرای گروهی از کارشناسان و متخصصان با تجربه گردیده و در پروژههای بزرگی در کشور مشارکت نماید.
مدیران، کارشناسان و کارمندان نسران (سهامی خاص) در محیطی خلاق و کارآمد که بر پایه نگرش مدیریت کیفیت جامع (T.Q.M) استوار گردیده است، رسالت خود را
(ارائه خدمات با بالاترین کیفیت و قابلیت اطمینان بالا و همچنین تعهد به اجرای امور محوله در موعد مقرر)
تعیین نموده است. در این راستا ایجاد تشکلهای تیمی و بکارگیری توامان علم و تجربه، رمز موفقیت نسران (سهامی خاص) در اجرای پروژههای مختلف بوده است.
نوع فعالیت مرکز کارورزی
شرکت نسران دارای بخش های مختلفی است که در ساختار سازمانی شرکت به تفضیل آمده است. بخش IT و انفورماتیک زیرنظر مدیر طرح و برنامه فعالیت می کند و رئوس فعالیت های بخش خدمات انفورماتیک که مرتبط با رشته عملی کارورز است ، به شرح زیر است:
آموزش
بررسی و نظارت بر برنامه های آموزشی سیستمهای نرمافزاری موجود در شرکت (مانندآموزش اتوماسیون اداری و ...)
اطلاع رسانی و آموزش روزانه از طریق شبکه داخلی شرکت
همکاری در آموزش نیروهای کارورز و کارآموز در گرایشهای کامپیوتر
نظارت
نظارت و تعیین سطوح دسترسی کاربران به شبکه و اینترنت و امنیت شبکه
نظارت و تائید فنی خرید، نگهداری، ارتقاء و راهبری نرم افزاری/سختافزاری
نظارت و هدایت کارکنان در تهیه نمودارها، جداول ، اسلا یدها ، دیاگرامها ، فرمها و پرسشنامه ها
نظارت بر نصب سیستم دبیرخانه و مالی
پیگیری ونظارت برخدمات ارائه شده در مدت زمان گارانتی محصولات و بعداز گارانتی توسط شرکتهای مقابل شرکت
نظارت بر فر آیند ذخیره و بازیابی اطلاعات و داده های شرکت
پشتیبانی
پشتیبانی نرم افزاری و سخت افزاری رایانه ها
پشتیبانی فنی شبکه اینترنت و سایت شرکت ( نگهداری و بروزرسانی)
تهیه پشتیبان از دادههای حیاتی شرکت به صورت روزانه،هفتگی و ماهانه
رفع اشکالات کاربران شبکه
گام برداشتن در راستای سیستم دبیرخانه الکترونیکی ، نرم افزارهای تحت شبکه و ..
ارتقاءکمی و کیفی سرویسهای نرم افزاری شبکه داخلی
ارتقاء کمی و کیفی منابع سخت افزاری شبکه داخلی
کامپیوتری کردن سیستم های موجود دستی
جمعآوری و بروزرسانی اطلاعات رایانهها، نرم افزارها ، شبکه و سخت افزارهای موجود و ایجاد و ارائه بانک نرم افزاری و سخت افزاری
تهیه گزارشات و انجام امور محوله جهت مقام مافوق
نگهداری تجهیزات فعال (سرورها و سوئیچها) و غیر فعال شبکه محلی
عملیاتی
توسعه شبکه داخلی شرکت
نصب و راهاندازی سرورهای مورد نیاز شرکت
تولید نرم افزارهای سفارش متمرکز و غیر متمرکز
تکمیل و توسعه وب سایت
تجهیز، ارتقاء،تعمیر و اصلاح سختافزاری و نرم افزاری
تحقیقاتی
ارائه پیشنهادهای اصلاحی در بهبود برنامهها
مطالعه و سنجش نیازهای روزآمد شرکت مرتبط با IT و ICT
مطالعه و ارائه طرحهای کاربردی مرتبط در شرکت
برنامهریزی استفاده بهینه از تجهیزات سخت افزاری نظیر ایستگاههای کاری و منابع شبکه
هما هنگی
هماهنگی درون و برون بخشی امور رایانهای در شرکت
هماهنگ نمودن وظایف واحد کامپیوتر با اهداف شرکت
هماهنگی در زمینه خرید، ارتقاء، تعمیر و اصلاح با قسمت تدارکات ( سختافزار / نرمافزار )
هماهنگی با سایر پشتیبانان سختافزاری جهت ارائه خدمات
هماهنگی با سایر پشتیبانان و نویسندگان برنامه های مورد استفاده درشرکت
هماهنگی در پیادهسازی پایلوت طرح جامع سیستم یکپارچه و سازمان الکترونیک
مشاوره
مشاوره خدمات نرمافزاری، سختافزاری، شبکه، اینترنت
کارشناسی و اظهارنظر در زمینه کلیه امور انفورماتیکی شرکت
مشاوره طرحهای تحقیقاتی واحدها در مورد انتخاب مناسبترین نرمافزار و پلت فرم موجود
مشاوره و توصیه به کاربران در زمینه نگهداری و پشتیبانی دادهها و نگهداری
ایستگاههای کاری و منابعشرح فعالیت های انجام شده
زمینه های آموزشی:
فصل اول: SQL Server
یادگیری نرم افزار SQL Server 2000 و توانایی کار با توابع و کوئری و ... از جمله آموزشهای اولیه بود.
مقدمه ای بر پرس و جو از بانک اطلاعاتی:
منظور از پرس و جو، استعلام از یک بانک اطلاعاتی با استفاده از دستور SELECT است.
هر پرسوجو برای استخراج دادههااز بانکاطلاعاتی، با یک فرمت خوانا و مطابق با درخواست کاربر،مورد استفاده قرار میگیرد.
بعنوان مثال، اگر جدولی برای دانشجویان کلاسی داشته باشید، ممکن است دستور SQLی را صادر کنید که مشخص کننده نام دانشجویی است که بالاترین نمرات کلاس را اخذ کرده باشد. این درخواست از بانک اطلاعاتی، یک پرس و جو بحساب خواهد آمد.
دستور SELECT، دستوری که نمایانگر زبان پرس و جوی دادهها (DQL) در SQL است، برای ساختن پرس و جوهای بانک اطلاعاتی مورد استفاده قرار میگیرد.
دستور SELECT یک دستور مستقل نیست.
قالب یک دستور SELECT ساده بصورت زیر است :
SELECT [ * | distinct column1, column2 ]
FROM table
WHERE condition
داده ها را میتوان با استفاده از عبارت ORDER BY مرتب نمود. ترتیب پیش فرض این عبارت، صعودی است.
قالب یک دستوری عبارت ORDER BY بصورت زیر است
SELECT [ * | distinct column1, column2 ]
FROM table1
ORDER BY column1 | integer [ ASC | DESC ]
دستورات عملیات ذخیرهسازی :
برای انجام عملیات سهگانه ذخیرهسازی سه دستور DELETE، INSERT و UPDATE وجود دارد.
شکل کلی دستور UPDATEچنین است:
UPDATE table-name
SET assignment-commalist
[WHERE Condition(s)]
شکل کلی دستور DELETEچنین است:
DELETE
FROM table-name
[WHERE Cond(s)]
شکل کلی دستور INSERT چنین است:
این دستور دو شکل کلی دارد:
INSERT INTO table-name
Values(one row);
INSERT INTO table-name
Subquery;
در شکل دوم، تعدادی سطر در جدول درج میشوند.
دستورات تعریف دادهها:
تعریف شما:
CREATE SCHEMA
AUTHORIZATION USER
{base – table definition , view definition , grant-operation }
انواع دادهای:
CHARACTER[(length)]
INTEGER
DECIMAL [(precision[,scale])]
SMALLINT
DOUBLE PRECISION
REAL
FLOAT [(precision)]
NUMERIC [(precision[,scale])]
دستور ایجاد جدول:
CREATE SCHEMA
AUTHORIZATION …
CREATE TABLE …
دستور حذف جدول:
DROP TABLE table-name
دستور ایجاد و حذف دید:
CREATE VIEW …
DROP VIEW …
توابع جمعی (گروهی)
COUNT: تعداد مقادیر اسکالر را به دست میدهد.
SUM: حاصل جمع مقادیر اسکالر در یک ستون را به دست میدهد.
AVG: میانگین مقادیر اسکالر در یک ستون را به دست میدهد.
MAX: بیشترین مقدار اسکالر در یک ستون را به دست میدهد.
MIN: کمترین مقدار اسکالر در یک ستون را به دست میدهد.
تابع COUNT:
تابع COUNT( )، بمنظور شمارش سریع تعداد رکوردهای یک جدول مورد استفاده قرار میگیرد. این تابع بهمراه پرانتز جهت مشخصکردن ستونی که باید شمارش شود، بکار برده میشود.
قالب تابع COUNT بصورت زیر است :
SELECT COUNT ( * | table_name ) FROM table1
تابع SUM , AVG
تابع SUM( )، بمنظور بدست آوردن مجموع مقادیر یک ستون از یک جدول و تابع AVG( )، برای بدست آوردن میانگین گروهی از سطرهای یک جدول استفاده می شوند.
مقدار آرگومان مورد استفاده دراین توابع باید عددی باشند. این توابع رانمیتوان برای ستونهایی که مقادیر غیرعددی دارند مانند کاراکتری یا تاریخ، بکار برد.
قالب تابع SUM و AVG بصورت زیرند :
SUM : SELECT SUM ( Column_name) FROM table1
AVG : SELECT AVG ( Column_name ) FROM table1
تابع MIN , MAX
تابع MIN( )، کمینه مقدار یک ستون را برای گروهی از سطرها برمیگرداند و تابع MAX( )
نیز برای بدست آوردن بیشینه مقدار از مقادیر یک ستون در گروهی از سطرها مورد استفاده قرار می گیرد.
قالب تابع AVG بصورت زیر است :
MIN : SELECT MIN ( Column_name ) FROM table1
MAX : SELECT MAX ( Column_name ) FROM table1
عملگرهای منطقی
عملگرهای منطقی، عملگرهایی هستند که به جای نمادها، از کلمات کلیدی SQL، برای مقایسه استفاده میکنند.
عملگرهای منطقی عبارتند از :
1) IS NULL : برای مقایسه یک مقدار با مقدار تهی استفاده میشود.
2) BETWEEN : برای جستجوی مقادیری که بین کمینه و بیشینه مقادیرمشخص شده قرار دارند
3) IN : برای مقایسه یک مقدار با فهرستی از مقادیر موجود مشخص شده، استفاده میشود.
4) LIKE : برای مقایسه با مقادیر مشابه، با استفاده ازعملگرهای جانشین ” % ” و یا ”_” استفاده میشود.
نکته: عملگرهای منطقی را میتوان با استفاده از عملگرهای AND و OR با هم ترکیب نمود.
نكته: عملگرهاي منطقي را ميتوان با استفاده از عملگرهاي AND و OR با هم تركيب نمود.
مثال از BETWEEN:
در مثال زير، كارمنداني كه مقدار حقوق آنها بين 000,000,5 و 000,000,10 باشند ليست ميشوند :
SELECT EMP_ID, LAST_NAME, FIRST_NAME, SALARY
FROM EMPLOYEE_TBL
WHERE SALARY BETWEEN ‘5,000,000’ AND ’10,000,000’
خروجی :
EMP_ID LAST_NAME FIRST_NAME SALARY
- -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
31254658 MORADI ALI 5,500,000
32587469 KABIRI MOHAMMAD 9,800,000
33652415 TAGHAVI REZA 8,500,000
3 rows selected.
مثال از IN:
در مثال زير، كارمنداني كه مقدار حقوق آنها يكي از مقادير 000,500,5 و 000,800,9 و 000,500,8 باشند ليست ميشوند :
SELECT EMP_ID, LAST_NAME, FIRST_NAME, SALARY
FROM EMPLOYEE_TBL
WHERE SALARY IN ( ‘5,500,000’ , ’9,800,000’ , ‘8,500,000’ )
امكان LIKE و NOTLIKE:
با اين دو امكان ميتوان دادههاي مورد نظر را با دادن يك رشته كاراكتري به عنوان نشانوند جستجو و بيان شرايط مورد نظر، بازيابي كرد.
آزمون تست وجود هيچ مقدار در يك ستون
ميتوان با امكان IS NULL وجود هيچ مقدار در يك ستون را تست كرد.
امكان UNION و UNION ALL:
با اين امكان، ميتوان عملكرد عملگر UNION جبري را برنامهسازي كرد. حاصل اين عملكرد، جدولي است كه سطرهاي تكراري ندارد. اگر از گزيدار ALL استفاده شود، سيستم ديگر سطرهاي تكراري را در صورت وجود، حذف نميكند.
امكان GROUP BY: (گروهبندي)
با اين امكان ميتوان سطرهاي جدول را حسب مقادير يك ستون ساده گروهبندي كرد به نحوي كه در هر گروه، مقدار آن ستون يكسان باشد.
امكان HAVING
با اين امكان ميتوان شرط (شرايطي) ناظر به گروه سطرها اعلان كرد. نقش اين امكان در واقع همان نقش WHERE در سطر است. توجه داشته باشيد كه HAVING هميشه با GROUP BY ميآيد.
انواع پیوند
پیوند به شرط تساوی (Equi join)
پیوند طبیعی (Natural join)
پیوند به شرط نامساوی (Non- Equi join)
پیوند بیرونی (Outer join)
پیوند جدول با خودش (Self join)
پیوند به شرط تساوی (Equi join)
همان inner join یا پیوند داخلی است
دو جدول با یک ستون مشترک(کلید اصلی)
قالب دستور
Select
table1.col1 , table2.col2 …
From
table1,table2,…
Where
table1.col_name = table2.col_name
And …..
پیوند طبیعی (Natural join)
شرط پیوند مانند Equi join است فقط ستونهای انتخابی تفاوت دارند .
قالب دستور
Select
table1.* , table2.col_name …
From
table1,table2,…
Where
table1.col_name = table2.col_name
And …..
نام مستعار جداول
تغییر نام یک جدول در یک دستور
موقتی است و نام جدول در پایگاه تغییر نخواهد کرد
برای خوانایی بیشتر
مثال
Select
E.EMP_ID , EP.Salary,
EP.Date , E.Last_name
From
Employee_TBL E, Employee_PAY_TBL EP
Where
E.EMP_ID = EP.EMP_ID
پیوند به شرط نامساوی (Non- Equi join)
دو یا چند جدول را بر اساس عدم تساوی مقدار ستون خاصی از یک جدول با ستونی در جدول دیگر پیوند می زند .
قالب دستور
Select
table1.col1 , table2.col_name …
From
table1,table2,…
Where
table1.col_name != table2.col_name
And …..
پیوند بیرونی (Outer join)
برای بدست آوردن تمامی سطرهای موجود در یک جدول ، حتی اگر سطرهای متناظری در جدول دیگر نداشته باشد .
نماد (+) نمایانگر این پیوند است .
قالب این دستور برای نسخه های مختلف متفاوت است .
تنها در یک طرف شرط می توان به کار برد .
قالب دستور
From
table1,table2,…
Where
table1.col_name [(+)]= table2.col_name[(+)]
پیوند جدول با خودش (Self join)
پیوند یک جدول با خودش به گونه ای که گویی دو جدول است
قالب دستور
Select
A.col1 , B.col2 …
From
table1 A,table2 B,…
Where
A.col_name = B.col_name
پشتيباني و بازيابي پايگاه داده SQL Server
برای گرفتن backup حتما باید جزء backup opreator ها باشیم
در Sql Server Service Manager ابتدا بايد server را مشخص كرد.مثلا: nasransrv
درSQL سرويس ها شامل:
1-SQL server agent ، 2-SQL server ، 3-Distributed transaction coordinator
است كه SQL server agent حتما بايد در حال اجرا باشد.
در زير گروه SQL Server Group ابتدا گروه مشخص مي شود.مثلا: nasransrv
در بخش management به قسمت Database maintenance plan مي توانيم برويم و روي آن راست كليك نماييم
.ابتدا database ها را مشخص مي كنيم.مثلا kav,master,model,msdb,sgdb
در بخش Reporting محل ذخيره فايل پشتيبان را مشخص مي نماييم.مثلا: I:\SQLSRV
در بخش Transaction Log Backup ابتدا محل ذخيره فايل پشتيبان را مشخص مي نماييم.همچنين مي توانيم scheduleاي هم برايش تعيين نماييم.مثلا : محل ذخيره فايل را I:\SQLSRV\transactions مي گيريم و schedule اش را هم هر روز ساعت 2 بعدازظهر تعيين مي كنيم.
در بخش Complete Backup ابتدا محل ذخيره فايل پشتيبان را مشخص مي نماييم.همچنين مي توانيم scheduleاي هم برايش تعيين نماييم.مثلا : محل ذخيره فايل را I:\SQLSRV\schedule مي گيريم و schedule اش را هم هر هفته روز پنج شنبه ساعت 10 قبل ازظهر تعيين مي كنيم.
در بخش Integrity كه صحت اطلاعات و يكپارچگي اطلاعات درون پايگاه داده را بررسي مي كنيم، ابتدا گزينه check database integrity را انتخاب مي كنيم.همچنين مي توانيم scheduleاي هم برايش تعيين نماييم.مثلا : schedule اش را هم روز دوم هر ماه ساعت 1 بعدازظهر تعيين مي كنيم.
در بخش Optimizations كه اطلاعات بهينه سازي را به روز در مي آوريم، ابتدا گزينه Reorganize data and index page را انتخاب مي كنيم .همچنين مي توانيم scheduleاي هم برايش تعيين نماييم.مثلا : schedule اش را هم روز سوم هر ماه ساعت 1بعدازظهر تعيين مي كنيم.
پشتيباني و بازيابي پايگاه داده
SQL Server 2000 راه هاي مختلفي براي پشتيباني از يك پايگاه داده ارائه مي دهد.
ساده ترين روش تهيه يك پشتيبان كامل يعني كپي دقيق و كاملي از اطلاعات ، در يك زمان مشخص مي باشد.
نكته : SQL Server امكان مي دهد كه در حين كار با يك پايگاه داده ، نسخه پشتيبان آن را تهيه كنيد.در واقع نيازي به متوقف كردن كار سيستم نيست.البته در حين تهيه پشتيبان انجام بعضي از كارها ممكن نيست.اين امور عبارتند از عملياتي كه ساختار يك پايگاه داده را تغيير مي دهند، مثل ساختن يا حذف كردن فايل ها يا ساختن index .
روش ديگري كه توسط SQL Server ارائه شده است ، تهيه يك پشتيبان جزئي مي باشد. پشتيبان جزئي تنها اطلاعاتي را كه از زمان تهيه آخرين پشتيبان كامل تغيير كرده اند ذخيره مي كند.مزيت استفاده از اين روش اين است كه در بيشتر موارد حجم پشتيبان جزئي به مراتب خيلي كمتر از پشتيبان كامل مي باشدو پروسه تهيه آن خيلي سريع تر انجام مي شود.
نكته : هنگامي كه تنها درصد كوچكي از اطلاعات تغيير كرده اند از پشتيبان جزئي استفاده كنيد .به عنوان مثال ، مي توانيد هر روز يك پشتيبان جزئي تهيه كرده و هفته اي يك بار يك پشتيبان كامل ذخيره كنيد.
نوع سوم پشتيبان ارائه شده توسط SQL Server ، ثبت تراكنش هاي انجام شده مي باشد كه آن را Transaction Log مي ناميم. Transaction Log ، سابقه تمام تراكنش هاي انجام شده بر روي پايگاه داده را از زماني كه آخرين نسخه Transaction Log ذخيره شده است ثبت مي كند.
نكته : پشتيبان Transaction Log به شما امكان مي دهد كه يك پايگاه داده را به يكي از وضعيت هاي قبلي خود برگردانيد. به عنوان مثال ، فرض كنيد كه يك كاربر اطلاعات اشتباه در پايگاه ذخيره كرده باشد.در اين شرايط با استفاده از Transaction Log مي توانيد پايگاه داده را به وضعيت پيش از ورود اطلاعات غلط بازگردانيد.
اگر سرويس دهنده دچار مشكل شود ، به طور اتوماتيك از Transaction Log استفاده كرده و اطلاعات پايگاه داده را بازيابي مي كند.همچنين شما مي توانيد آن را به همراه يك پشتيبان كامل ، يا تركيبي از پشتيبان كامل و جزئي بكار بريد.مزيت استفاده از اين نوع پشتيبان در اين است كه در بيشتر موارد حجم فايل پشتيبان از يك پشتيبان كامل يا جزئي كمتر مي شود.
نكته : در بعضي موارد ، ممكن است يك پشتيبان Transaction Log از يك پشتيبان كامل يا جزئي بزرگتر شود. به عنوان مثال ، حالتي را در نظر بگيريد كه گروه كوچكي از ركوردها به طور مكرر تغيير كنند.در اين شرايط مي توانيد يك پشتيبان كامل تهيه كنيد و يا تعداد بيشتري پشتيبان Transaction Log بسازيد.
استفاده از ويزارد Database Maintenance Plan
روش صحيح پشتيباني و بازيابي اطلاعات يك پايگاه داده اين است كه هر چند وقت يكبار و در زمان هاي مشخص ، از اطلاعات درون پايگاه داده يك پشتيبان تهيه شود كه البته ممكن است به دست فراموشي سپرده شود . SQL Serverمكانيزمي ارائه مي دهد كه بتوانيد عمليات تهيهي پشتيبان را در موعدهاي تعيين شده به طور اتوماتيك به انجام برسانيد.روش هاي متعددي براي اين كار وجود دارد ولي ساده ترين كار استفاده از ويزارد Database Maintenance Plan است.
اين ويزارد به شما امكان مي دهد كه براي انجام بسياري از امور لازم براي نگهداري پايگاه داده يك برنامه زمانبندي تنظيم كنيد. مهمترين اين امور ، به روز در آوردن اطلاعات آماري پايگاه داده مي باشد.
SQL Server در مورد توزيع آماري داده ها درون جداول ، اطلاعاتي نگه مي دارد. اين اطلاعات به SQL Server امكان مي دهند كه بهترين روش براي گرفتن اطلاعات را تعيين كند. ولي به مرور زمان و با تغيير كردن داده ها و اضافه شدن داده هاي جديد به پايگاه ، اين اطلاعات از رده خارج مي شوند . SQL Server اين اطلاعات آماري را در فواصل زماني مشخص به طور اتوماتيك به روز در مي آورد. ولي با استفاده از ويزارد Database Maintenance Plan مي توانيد به SQL Server دستور دهيد كه در فواصل زماني دلخواه شما اين اطلاعات را به روز در آورد. به علاوه ، با استفاده از اين ويزارد مي توانيد براي بررسي صحت و درستي پايگاه داده يك برنامه زمانبندي مشخص كنيد.
با تعيين يك برنامهي نگهداري مي توان هر نوع تركيبي از اين امور را انجام داد. به علاوه ، مي توانيد از SQL Server بخواهيد در پايان انجام هر يك از عمليات ، گزارشي براي شما آماده كند.
به منظور ساختن يك برنامه زمانبندي براي تهيه يك پشتيبان
پايگاه مورد نظر را از كنسول درختي انتخاب كنيد. SQL Server ليستي از اشياء پايگاه داده را در منطقه جزييات نمايش مي دهد.
دکمه Wizard موجود بر روی نوار ابزار Enterprise Manager را کلیک کنید. کادر محاوره ای Select Wizard ظاهر می شود.
3. در قسمت Management ، آیتم Database Maintenance Plan Wizard را انتخاب کنید .صفحه اول این ویزارد مطابق شکل زیر ظاهر می شود.
4. دکمه Next را کلیک کنید. این ویزارد نام پایگاه داده را از شما درخواست می کند.چون پایگاه SgDb در کنسول درختی انتخاب شده بود ، به طور پیش فرض در این پنجره نیز انتخاب شده است. ولی می توانید پایگاه های دیگری را نیز انتخاب کنید.
5.دکمه Next را کلیک کنید. صفحه بعدی به شما امکان می دهد که اطلاعات بهینه سازی را به روز در آورید.
6. دکمه Next را کلیک کنید. در این صفحه ، ویزارد از شما سئوال می کند که آیا صحت اطلاعات درون پایگاه داده بررسی شود یا خیر.
دکمه Next را کلیک کنید. ویزارد صفحه ای را نشان می دهد که در آن برنامه ی تهیه پشتیبان از شما سئوال می شود. ما تنظیمات پیش فرض را قبول کرده و تنها برنامه زمانبندی را تغییر می دهیم.
8. دکمه Change را کلیک کنید. این ویزارد کادر محاوره ای Edit Recurrin Job Scheduleرا نمایش می دهد.
9. به طور مثال در گروه Occurs آیتمWeekly را انتخاب کنید. گزینه های درون این کادر محاوره ای برای تنظیم پشتیبان هفتگی تغییر می کنند.
10. مطابق شکل زیر زمان تهیه ی پشتیبان را پنج شنبه هر هفته تنظيم كنيد.
11. دكمه Ok را كليك كنيد و به ويزارد برگرديد.
12. دكمه Next را كليك كنيد.در اين صفحه ، ويزارد آدرس محل ذخيره فايل را از شما مي پرسد.
13.گزینه Use This Directory را انتخاب کرده و سپس دکمه Browse را کلیک کنید.این ویزارد کادر محاوره ای File Backup Directory را نمایش می دهد.پوشه مورد نظر را انتخاب کرده و دکمه Ok را کلیک کنید.
14.دکمه Next را کلیک کنید .در صفحه بعدی ، ویزارد از شما می پرسد که آیا تهیه پشتیبان Transaction Log نیز باید در برنامه زمانبندی گنجانده شود یا خیر.
15.وقتی گزینه Back up the transaction log as part of the maintenance plan را انتخاب کنید .ویزارد مطابق شکل زیر نمایش داده می شود.
16.دکمه Change را کلیک کنید و تنظیمات را هر روز ساعت 2 بعد از ظهر انجام می دهیم.
17. تغییرات اعمال شده است.
18. دکمه Next را کلیک نمایید.در اینجا از شما محل ذخیره فایل پرسیده می شود.
19. با انتخاب گزینه Use this directory محل ذخیره فایل را مشخص کنید.
20. دکمه Next را کلیک کنید .در این صفحه می توانید از ویزارد بخواهید که پس از اجرای عملیات برای شما گزارش تهیه کند.
21. با انتخاب گزینه Write report to a text file in directoryمی توانیم محل ذخیره فایل را مشخص کنیم.
22. دکمه Next را کلیک کنید. در صفحه بعد ، ویزارد از شما می پرسد که آیا تاریخچه عملیات نگهداری را روی سرویس دهنده محلی ذخیره کند یا خیر.در اینجا همان تنظیمات پیش فرض را قبول می کنیم.
23. دکمه Next را کلیک کنید .صفحه نهایی ویزارد برای تایید عملیات ظاهر می شود.
سيستم امنيتي SQL Server 2000
يكي از نكات مهم مديريت يك پايگاه داده حصول اطمينان از امنيت اطلاعات است .هنگامي كه يك نمونه از SQL Server درخواستي براي اتصال دريافت مي كند، يك Login ID به آن ارسال مي شود. Login IDشناسه اي است كه حق دسترسي به SQL Server 2000 را تعيين مي كند. SQL Server ابتدا بررسي مي كند كه آيا Login ID ارسال شده معتبر است يا خير. و سپس تعيين مي كند Login ID مزبور از نظر امنيتي اجازه عمل درخواست شده را دارد يا خير. اين پروسه ، تصديق يا شناسايي كاربر نام دارد.
SQL Server 2000 ، شناسايي را به دو روش انجام مي دهد: مي تواند براي ارزيابي كاربر به سيستم امنيتي ويندوز تكيه كند و يا خودش ارزيابي را انجام دهد.
سيستم شناسايي ويندوز
در اين روش ، مدير سييستم براي كاربران يا گروه هاي كاربري ويندوز حق دسترسي تعيين مي كند. كامپيوترهاي مشتري كه از سرويس هاي كامپيوتر مركزي استفاده مي كنند به اين كامپيوتر متصل مي شوند.كاربر توسط سيستم عامل ويندوز كه بر روي كامپيوتر مركزي نصب شده است شناسايي مي شود و اگر اجازه دسترسي داشته باشد ، به ان متصل مي شود .در اين حالت SQL Server تنها كافي است بررسي كند كه ايا كاربر متصل شده حق دسترسي به سرويس دهنده و پايگاه هاي داده را دارد يا خير؟
سيستم شناسايي SQL Server
در اين روش هنگامي كه يك درخواست براي اتصال فرستاده مي شود ، SQL Server يك Login ID و يك كلمه عبور دريافت مي كند و سپس Login مزبور را با ليست Login هاي تعريف شده توسط مدير سيستم مقايسه مي كند.
Login هاي كاربر
براي مديريت سيستم امنيتي SQL Server 2000 از چند شي مختلف استفاده مي شود . مهمترين انها Login ها مي باشند كه براي مشخص كردن كاربران SQL Server ، كاربران ويندوز و گروه هاي كاري ويندوز به كار مي روند.
ساختن Login
براي ساختن Login ها مي توان روي آيكون Logins در پوشه Security راست كليك كرده و دستور New login را از منوي زمينه انتخاب كرد ولي ساده ترين راه استفاده از ويزارد Create login مي باشد.
براي ساختن يك login با مدل شناسايي SQL Server
سرويس دهنده موردنظر خود را در كنسول درختي انتخاب كنيد . ليستي از اشياء آن سرويس دهنده در منطقه جزييات ظاهر مي شود.
دكمه Wizard موجود بر روي نوار ابزار Enterprise Manager را كليك كنيد . SQL Server كادر محاوره اي Select Wizard را نشان مي دهد.
آيتم Create Login Wizard موجود در قسمت Databases را انتخاب نموده و سپس دكمه ok را كليك كنيد. اولين صفحه اين ويزارد توسط SQL Server به نمايش در مي آيد.
دكمه Next را كليك كنيد. ويزارد صفحه اي را نشان مي دهد كه مدل شناسايي را از شما درخواست مي كند.
آيتم دوم را انتخاب مي كنيم.
دکمه Next را کلیک کنید . در صفحه بعدی ، شناسه کاربر و کلمه عبور از شما درخواست می شود
کلمه Test ID را به عنوان نام وارد کرده و کلمه عبور دلخواه خود را نیز تایپ کنید.
دکمه Next را کلیک کنید . ویزارد از شما سئوال می کند که آیا این Login را به کدامیک از رل های امنیتی نسبت دهد.
این Login را به رل System Administrator نسبت دهید.
دکمه Next را کلیک کنید . در صفحه بعدی باید پایگاه هایی را که این login به آنها دسترسی دارد مشخص نمایید.
این login را به پایگاه داده SgDb نسبت دهید.
12.دکمه Next را کلیک کنید. در صفحه نهایی ویزارد انتخاب های شما نشان داده می شوند.
توجه: login هایی که به رل های مخصوص سرویس دهنده مثل رل System Administrators نسبت داده می شوند، به تمام پایگاه های داده دسترسی خواهند داشت ، حتی اگر در مرحله 11 آنها را انتخاب نکنید.
13.دکمه Finish را کلیک کنید.این ویزارد پیغامی مبنی برا تمام کار و ساخته شدن login جدید نمایش می دهد.
براي ساختن يك login با مدل شناسايي ويندوز
براي انجام اين كار مراحل فوق را طي كنيد و در مرحله 5 ، آيتم اول را انتخاب كنيد. پنجره زير ظاهر مي شود.
حال بايد شناسه ويندوز را به فرم domain name \ account name وارد كنيد. Account name مي تواند نام يك كاربر يا گروه باشد. سپس دكمه Next را كليك كنيد. بقيه مراحل كاملا مشابه مي باشند.
نكته : آيتم Deny Access To Server كه در اين صفحه ديده مي شود به شما امكان مي دهد كه به طور صريح از دسترسي يك كاربر يا گروه به سرويس دهنده جلوگيري كنيد.
مديريت login ها
همانطور كه بقيه اشياء پايگاه داده به مديريت و نگهداري نياز دارند ، شناسه هاي كاربران نيز ممكن است در طول زمان تغيير كنند .به عنوان مثال ممكن است لازم باشد كه رل امنيتي نسبت داده شده به يك login و يا پايگاه داده قابل دسترسي آن را تغيير دهيد و همچنين در بعضي شرايط ممكن است بخواهيد يك login را به طور كامل حذف كنيد.تمام اين كارها با استفاده از Enterprise Manager بسيار ساده است.
براي تغيير دادن ويژگي هاي يك login
روي آيكون logins كه در پوشه Security قرار دارد كليك كنيد.SQL Server ليستي از login ها را در منطقه جزئيات نمايش مي دهد.
روي Test ID دوبار كليك كنيد.كادر محاوره اي Properties SQL Server Loginباز مي شود
3.روی سربرگ Server Roles کلیک کنید.SQL Server رل های امنیتی سرویس دهنده را در یک لیست نشان می دهد که در آن رل امنیتی مربوط به این login مشخص شده است.
4. این login را از رل System Administrators حذف کنید
روی سربرگ Database Access کلیک کنید.پایگاه های داده ای که این login به انها دسترسی دارد در لیست مشخص شده اند.
پایگاه KAV را انتخاب کنید.
دکمه Ok را کلیک کنید تا این کادر محاوره ای بسته شود. به این ترتیب ویزگی های این login تغییر می کنند .
برای حذف این login
روی آیکون logins در پوشه Security کلیک کنید.لیستی از login هادر منطقه جزئیات ظاهر می شود.
Test ID را انتخاب کرده و سپس دکمه Delete را نشان دهید.SQL Server پیغامی را نمایش داده و از شما می خواهد که عملیات حذف را تائید کنید.
دکمه Yes را کلیک کنید. SQL Server ، این login را حذف می کند.
امنیت در سطح پایگاه داده
در سطح پایگاه داده ، هر یک از login ها به یک کاربر پایگاه داده مربوط می شوند. اگر چه login به یک شخص امکان می دهد که به یک نمونه از SQL Server دسترسی مجاز داشته باشد، ولی باید بدانید که به یک پایگاه داده خاص دسترسی نخواهد داشت مگر انکه به عنوان یک کاربر آن پایگاه داده تعریف شود.
همانطور که login ها به رل های سرویس دهنده نسبت داده می شوند و به این ترتیب حق دسترسی انها در سطح سرویس دهنده مشخص می گردد، کاربران یک پایگاه داده نیز به رل های آن پایگاه داده نسبت داده می شوندو از طریق سطح دسترسی آنها به پایگاه داده تعیین می گردد.
کاربران پایگاه داده
هنگامی که با استفاده از ویزارد Create Login یک login می سازید و دسترسی به یک یا چند پایگاه داده را برای وی میسر می سازید، این loginبه طور اتوماتیک به لیست کاربران آن پایگاه ها اضافه می شود. ولی وقتی یک پایگاه داده جدید می سازید ، login های موجود به عنوان کاربران آن منظور نمی شوند : بلکه خود شما باید login های مورد نظرتان را به لیست کاربران ان پایگاه داده اضافه کنید.