วันศุกร์ที่ 27 สิงหาคม พ.ศ. 2553

การสร้างระบบรักษาความปลอดภัยของฐานข้อมูล

การสร้างข้อมูลให้เป็นความลับ
                  การเข้ารหัส (Coding) คือ กระบวนการแปลงรูปแบบของ ข้อมูลให้อยู่ในรูปที่บุคคลอื่นๆ ไม่สามารถรู้เนื้อหาของข้อมูล ยกเว้นบุคคลที่เป็นผู้รับ
                 การยุบตัวซ้ำ (Compression) มักใช้กับข้อมูลประเภทตัวเลขหรือข้อมูลที่แปลงเป็นเลขฐานสองแล้ว ยังช่วยประหยัดเนื้อที่ในการจัดเก็บและเวลาในการส่งข้อมูลด้วย
                 การแทนค่า (Substitution) คล้ายการเข้ารหัส แต่จะเป็นการกำหนดค่าที่จะแทนล่วงหน้า
                 การสลับตำแหน่งข้อมูล (Transposition) ไม่ได้เปลี่ยนแปลงข้อมูล แต่ใช้การสลับตำแหน่ง
         การกำหนดสิทธิในการเข้าถึงข้อมูล
         การกำหนดสิทธิในการเรียกดูข้อมูล
         GRANT SELECT ON CUSTOMERSTAB TO Wichai;
         การกำหนดสิทธิในการเพิ่มข้อมูล
         GRANT INSERT ON SALESTAB TO Thidarat;
         การกำหนดสิทธิในการแก้ไขข้อมูล
         GRANT UPDATE ON SALESTAB TO Thidarat;
         การกำหนดสิทธิการเข้าถึงข้อมูลหลายคำสั่งของผู้ใช้เป็นกลุ่ม
         GRANT SELECT, INSERT ON ORDERSTAB TO Wichai;
         GRANT SELECT, INSERT ON ORDERSTAB TO Wichai, Thidarat;
         การกำหนดสิทธิการเข้าถึงข้อมูลโดยสามารถเข้าถึงข้อมูลบางส่วน
         GRANT UPDATE (SALECOM) ON SALESTAB TO Thidarat;
         GRANT UPDATE (ADDRESS,SALECOM) ON SALESTAB TO Thidarat;

การสำรองข้อมูลและการฟื้นสภาพข้อมูล

การสำรองข้อมูล

ฐานข้อมูล (database) หมายถึง กลุ่มของข้อมูลที่ถูกเก็บรวบรวมไว้ โดยมี
ความสัมพันธ์ซึ่งกันและกัน เพื่อลดความซ้ำซ้อนของข้อมูลและเก็บข้อมูลเหล่านี้ไว้ที่
ศูนย์กลาง เพื่อที่จะนำข้อมูลเหล่านมี้ าใช้ร่วมกัน
การจัดการฐานข้อมูล (Database Management) คือ การบริหารแหล่งข้อมูลที่ถูก
เก็บรวบรวมไว้ที่ศูนย์กลาง เพื่อตอบสนองต่อการใช้งานอย่างมีประสิทธิภาพ และลดการ
ซา้ํ ซ้อนของข้อมูล รวมทงั้ ลดความขัดแย้งของข้อมูลที่เกิดขนึ้ ภายในหน่วยด้วย
ตัวอย่าง : การจัดระบบฐานข้อมูลที่ใช้ในปัจจุบัน เช่น ฐานข้อมูลงบประมาณและ
การเงิน ฐานข้อมูลกำลังพล ฐานข้อมูลพัสดุ ฐานข้อมูลบัญชีทรัพย์สิน และฐานข้อมูล
งานวิจัย เป็นต้น
การจัดการฐานข้อมูลต้องอาศัยโปรแกรมที่ทำหน้าที่ในการกำหนดลักษณะข้อมูลที่
จะเก็บไว้ในฐานข้อมูลอำนวยความสะดวกในการบันทึกข้อมูลลงในฐานข้อมูล กำหนดผู้ที่
ได้รับอนุญาตให้ใช้ฐานข้อมูลได้ พร้อมกับกำหนดด้วยว่าให้ใช้ได้แบบใด เช่น ให้อ่านข้อมูล
ได้อย่างเดียวหรือให้แก้ไขข้อมูลได้ด้วย นอกจากนนั้ ยังอำนวยความสะดวกในการค้นหา
ข้อมูล การแก้ไขปรับปรุงข้อมูล ตลอดจนการจัดทำข้อมูลสำรองด้วย โดยอาศัยโปรแกรม
ที่เรียกว่า ระบบการจัดการฐานข้อมูล (Database Management System : DBMS) ซึ่ง
โปรแกรมที่ได้รับความนิยมในการจัดการฐานข้อมูล ได้แก่ Microsoft SQL, Oracle,
Informix, Visual Fox และ Microsoft Access เป็นต้น
ความสำคัญของระบบฐานข้อมูล
1) จัดเก็บและบันทึกข้อมูล (Data Storage)
2) ลดความซา้ํ ซ้อนของข้อมูล (Reduce Data Redundancy)
3) สามารถใช้ข้อมูลร่วมกันได้ (Data Concurrency)
4) ลดความขัดแย้งหรือแตกต่างกันของข้อมูล (Reduce Data Inconsistency)
5) ป้องกันการแก้ไขข้อมูลต่างๆ (Protect Data Editing)
ความถูกต้องของข้อมูลมีมากขนึ้ (Data Accuracy) 6)
7) สะดวกในการสืบค้นข้อมูล (Data Retrieval or Query
8) ป้องกันการสูญหายของข้อมูล หรือฐานข้อมูลถูกทำลาย (Data Security)
9) เกิดการประยุกต์ใช้ระบบสารสนเทศ (Apply Information System)

การฟื้นสภาพข้อมูล 

          ประเภทของการเกิดความขัดข้อง  ความขัดข้องของระบบ จะมีผลกระทบต่อทรานแซกชัน แต่ไม่ทำลายข้อมูลที่อยู่ในฐานข้อมูล เรียกว่า ซอฟต์แครช (Soft Crash)  ความขัดข้องของทรายแซกชัน จะมีผลกระทบต่อทรายแซกชันที่มีความขัดข้องเท่านั้น เช่น การกำหนดขอบเขตของทรานแซกชัน, การเกิด overflow ในการทำวิธีการฟื้นสภาพการฟื้นสภาพแบบล็อกเบส (log-based recovery) โดยการใช้ไฟล์ประวัติเข้ามาช่วยในการฟื้นสภาพรายละเอียดของไฟล์ประวัติ ประกอบด้วย ชื่อทรานแซกชัน, ชื่อเดตาไอเท็ม, ค่าเก่าของดาตาไอเท็มก่อนทำการบันทึก และค่าใหม่ของดาตาไอเท็มหลังทำการบันทึก วิธีการฟื้นสภาพ มี 3 วิธี คือ การยกเลิก(Undo), การทำซ้ำ(Redo), จุดตรวจสอบ(Checkpoint) งาน เป็นต้น

ข้อดีของระบบฐานข้อมูล

การใช้ข้อมูลร่วมกัน (data sharing) คือข้อมูลและสารสนเทศจากหน่วยงานหนึ่งสามารถใช้งานร่วมกับหน่วยงานอื่น ๆ ได้
ลดความซ้ำซ้อนของข้อมูล (reduce data redundancy) คือ การจัดเก็บข้อมูลจะรวบรวมไว้ในที่เดียวกัน หน่วยงานต่าง ๆ สามารถที่จะเรียกใช้แฟ้มข้อมูลเดียวกันได้ ทำให้ประหยัดเนื้อที่ในการจัดเก็บข้อมูลและลดความซ้ำซ้อนลงได้
ข้อมูลมีความถูกต้องมากขึ้น (improved data integrity) คือ การจัดเก็บข้อมูลจะเก็บไว้ในที่แห่งเดียวกัน หากมีการแก้ไขข้อมูลใด ๆ ก็จะปรับปรุง ณ แห่งเดียว ทำให้ข้อมูลมีความถูกต้องมากยิ่งขึ้น
เพิ่มความปลอดภัยให้กับข้อมูล (increased security) คือ การเข้าถึงข้อมูลผู้ใช้จะถูกกำหนดสิทธิ์ด้วยรหัสผ่าน (password) ให้สามารถเข้าใช้ข้อมูลในส่วนที่เกี่ยวข้องเท่านั้น
มีความเป็นอิสระของข้อมูล (data independency) คือ หากมีการเปลี่ยนแปลงโครงสร้างของตารางในฐานข้อมูล ก็ไม่จำเป็นต้องแก้ไขโปรแกรมประยุกต์ที่ใช้ จึงเกิดความเป็นอิสระระหว่างการจัดเก็บข้อมูลและการประยุกต์ใช้

ระบบฐานข้อมูล


ระบบฐานข้อมูล (database) หมายถึง กลุ่มของข้อมูลที่มีความสัมพันธ์กันและถูกนำมาจัดเก็บในที่เดียวกัน โดยข้อมูลอาจเก็บไว้ในแฟ้มข้อมูลเดียวกันหรือแยกเก็บหลาย ๆ แฟ้มข้อมูล แต่ต้องมีการสร้างความสัมพันธ์ระหว่างข้อมูลเพื่อประสิทธิภาพในการจัดการข้อมูล
ระบบจัดการฐานข้อมูล (Database Management System:DBMS) เป็นซอฟต์แวร์ระบบที่ใช้ในการจัดการฐานข้อมูล เปรียบเหมือนสื่อกลางระหว่างผู้ใช้และโปรแกรมประยุกต์ต่างๆที่เกี่ยวข้องกับการใช้ฐานข้อมูล
 


วัตถุประสงค์ไนการจัดเก็บข้อมูล

การเก็บข้อมูล สามารถนำกลับมาใช้งานได้อีกในภายหลัง
การจัดข้อมูล สามารถนำกลับมาใช้งานได้อย่างมีประสิทธิภาพ
การปรับปรุงข้อมูล สามารถปรับปรุงข้อมูลให้เป็นข้อมูลปัจจุบันอยู่เสมอ
การปกป้องข้อมูล ป้องกันข้อมูลให้มีความปลอดภัยจากการลักลอบใช้งาน หรือแก้ไข

ข้อมูล (Data)

ข้อมูล เป็นองค์ประกอบที่สำคัญของระบบสารสนเทศคอมพิวเตอร์ การจัดการข้อมูล (data management) เป็นกลยุทธ์ที่ใช้ในการบริหารองค์การให้มีประสิทธิภาพ และต้องมีการตัดสินใจที่ถูกต้อง รวดเร็วและทันต่อเหตุการณ์ในการทำธุรกิจในยุคปัจจุบัน

Database (ฐานข้อมูล) คืออะไร

Database (ฐานข้อมูล) คืออะไร  คือ ระบบที่รวบรวมข้อมูลไว้ในที่เดียวกัน ซึ่งประกอบไปด้วยแฟ้มข้อมูล (File) ระเบียน (Record) และ เขตข้อมูล (Field) และถูกจัดการด้วยระบบเดียวกัน โปรแกรมคอมพิวเตอร์จะเข้าไปดึงข้อมูลที่ต้องการได้ อย่างรวดเร็ว ซึ่งอาจเปรียบฐานข้อมูลเสมือนเป็น electronic filing system

  • บิต (bit) ย่อมาจาก Binary Digit ข้อมูลในคอมพิวเตอร์ 1 บิต จะแสดงได้ 2 สถานะคือ 0 หรือ 1 การเก็บข้อมูลต่างๆได้จะต้องนำ บิต หลายๆ บิต มาเรียงต่อกัน เช่นนำ 8 บิต มาเรียงเป็น 1 ชุด เรียกว่า 1ไบต์ เช่น

    10100001 หมายถึง ก
    10100010 หมายถึง ข
  • เมื่อเรานำ ไบต์ (byte) หลายๆ ไบต์ มาเรียงต่อกัน เรียกว่า เขตข้อมูล (field) เช่น Name ใช้เก็บชื่อ LastName ใช้เก็บนามสกุล เป็นต้น
  • เมื่อนำเขตข้อมูล หลายๆ เขตข้อมูล มาเรียงต่อกัน เรียกว่า ระเบียน (record) เช่น ระเบียน ที่ 1 เก็บ ชื่อ นามสกุล วันเดือนปีเกิด ของ นักเรียนคนที่ 1 เป็นต้น
  • การเก็บระเบียนหลายๆระเบียน รวมกัน เรียกว่า แฟ้มข้อมูล (File) เช่น แฟ้มข้อมูล นักเรียน จะเก็บ ชื่อ นามสกุล วันเดือนปีเกิด ของนักเรียน จำนวน 500 คน เป็นต้น
  • การจัดเก็บ แฟ้มข้อมูล หลายๆ แฟ้มข้อมูล ไว้ภายใต้ระบบเดียวกัน เรียกว่า ฐานข้อมูล หรือ Database เช่น เก็บ แฟ้มข้อมูล นักเรียน อาจารย์ วิชาที่เปิดสอน เป็นต้น
          การเข้าถึงข้อมูลในฐานข้อมูลจึงจำเป็นต้องมีระบบการจัดการฐานข้อมูลมาช่วย เรียกว่า             database management system (DBMS) ซึ่งจะช่วยให้ผู้ใช้สามารถจัดการกับข้อมูล ตามความต้องการได้ ในหน่วยงานใหญ่ๆอาจมีฐานข้อมูลมากกว่า 1 ฐานข้อมูลเช่น ฐานข้อมูลบุคลากร ฐานข้อมูลลูกค้า ฐานข้อมูลสินค้า เป็นต้น

โปรแกรมจัดการข้อมูล (Data Management Software)

การจัดการข้อมูล หมายถึง คุณสมบัติในการกระทำเกี่ยวกับข้อมูลที่อยู่ในเซลล์แต่ละเซลล์เช่น การจัดเรียงข้อมูล การค้นหาข้อมูล การแทนที่ข้อมูล เป็นต้น


โปรแกรมจัดการข้อมูล(Data Management Software)  โปรแกรมจัดการข้อมูล คือ โปรแกรมสำหรับการ
สร้าง จัดการ และรวบรวมข้อมูลจากไฟล์ต่างๆ โดยมีเครื่องมืออำนวยความสะดวกในการสร้างระบบสารสนเทศต่างๆ ได้ เพื่อให้ข้อมูลถูกจัดเก็บในรูปแฟ้มข้อมูล ปัจจุบัน ความต้องการใช้ข้อมูลเพิ่มขึ้นอย่างรวดเร็ว และเพื่อให้ได้ข้อมูลที่ทันต่อสถานการณ์ปัจจุบันมากที่สุด จึงทำให้มีการนำฐานข้อมูล
มาประยุกต์ใช้ในส่วนงานต่างๆ เพิ่มมากขึ้น

ฐานข้อมูล คือ กลุ่มของข้อมูลที่ถูกจัดเก็บเพื่อสนองความต้องการของระบบงานต่างๆ ในเวลาเดียวกัน โดยมีข้อมูลอยู่ที่ศูนย์กลาง โปรแกรมจัดการฐานข้อมูล (DatabaseManagement System) คือโปรแกรมที่ช่วยในการสร้าง หรือดูแลฐานข้อมูล เพื่อให้สามารถจัดเก็บข้อมูล และเรียกใช้ข้อมูลได้อย่างรวดเร็ว โดยผู้ใช้ไม่ต้องสร้างแฟ้มข้อมูลที่ซ้ำซ้อนกัน ซึ่งช่วยลดปัญหาความซ้ำซ้อนของการเก็บข้อมูล ลดปัญหาความยุ่งยากในการบำรุงรักษาข้อมูล และสามารถ ใช้ข้อมูลร่วมกันได้อย่างมีประสิทธิภาพโปรแกรมจัดการฐานข้อมูลจึงมีหน้าที่ในการควบคุมความคงสภาพของข้อมูล การควบคุม การใช้งานจากผู้ใช้หลายคน การควบคุมความ ปลอดภัยของข้อมูล การสำรองข้อมูลและการฟื้นสภาพข้อมูล
การควบคุมการคงสภาพของข้อมูล หมายถึง การควบคุมให้ข้อมูลมีความถูกต้องอยู่เสมอ และไม่มีการจัดเก็บข้อมูลที่ซ้ำซ้อนกันการควบคุมการใช้งานจากผู้ใช้หลายคนหมายถึง การควบคุมการใช้ข้อมูลจากผู้ใช้งานหลายคนพร้อมกันในเวลาเดียวกัน ข้อมูลจะต้องมีความทันสมัยอยู่ตลอดเวลา ผู้ใช้งานทุกคนควรจะได้รับข้อมูลที่ตรงกัน รวมถึงควบคุมลำดับการทำงานของผู้ใช้แต่ละคนที่ใช้งานฐานข้อมูลด้วย
การควบคุมความปลอดภัยของข้อมูลหมายถึง การควบคุมการใช้งานข้อมูลที่จัดเก็บในฐานข้อมูล โดยป้องกันไม่ให้ผู้ที่ไม่มีสิทธิในการใช้ข้อมูลเข้ามาเพิ่ม แก้ไข หรือลบข้อมูลได้

การสำรองข้อมูลและการฟื้นสภาพข้อมูล หมายถึง คุณสมบัติในการจัดเก็บข้อมูลทั้งหมดไว้ในที่หนึ่ง เพื่อเป็นข้อมูลสำรองสำหรับเรียกกลับมาได้ เมื่อข้อมูลปัจจุบันมีปัญหาการใช้งานโปรแกรมจัดการฐานข้อมูล ผู้ใช้งานจะต้องมีความรู้เกี่ยวกับฐานข้อมูลเบื้องต้นพอสังเขป เพื่อให้ระบบงานที่สร้างโดยใช้โปรแกรมจัดการฐานข้อมูลต่างๆ สามารถทำงานได้อย่างมีประสิทธิภาพโปรแกรมจัดการฐานข้อมูลมีจุดเด่นอยู่ที่การค้นหา และจัดทำรายงานต่างๆ ได้อย่างรวดเร็วทั้งการแสดงผลบนจอภาพ และการพิมพ์ออกทางเครื่องพิมพ์

การแสดงผลทางจอภาพสามารถทำได้โดยใช้ภาษาเรียกค้น หรือที่เรียกกันโดยทั่วไปว่า Query Language ภาษานี้จะใกล้เคียงกับภาษาธรรมชาติมากที่สุด ผู้ใช้จึงสามารถเรียนรู้การสร้างคำสั่ง ได้เร็ว การเรียกค้นทำได้โดยส่งคำสั่งด้วยภาษาเรียกค้นซึ่งมีเงื่อนไขต่างๆ เข้าไป เพื่อให้โปรแกรมจัดการฐานข้อมูลดึงข้อมูลมาแสดงตามเงื่อนไขที่ต้องการ การแสดงผลในรูปรายงานสามารถแสดงได้หลายรูปแบบ เช่น แสดงในรูปของข้อความ ตาราง แผนภูมิ รูปภาพ ซึ่งขึ้นอยู่กับผู้ออกแบบและพัฒนาระบบงาน