Category: Database

Grid Infrastructure 18c ตอน 4

โหมดแทบ จะ next technology เข้าระบบด้วยผู้ใช้ oracle เปิด terminal พิมพ์คำสั่งต่อไปนี้ จะได้ดังรูป เลือก Configure Oracle Grid Infrastructure for New Cluster กด Next จะได้ดังรูป เลือก Configure an Oracle Standalone Cluster กด Next จะได้ดังรูป เลือก Create Local SCAN แก้ชื่อให้ตรงกับที่ขอจดกับ DNS (rac-scan) ดังรูป กด Next…

Grid Infrastructure 18c ตอน 3

ไฟล์ที่ download จาก https://edelivery.oracle.com จะมี 2 ไฟล์คือ V978967-01.zip คือ ไฟล์ติดตั้ง database V978971-01.zip คือ ไฟล์ติดตั้ง grid infrastructure download ไฟล์มาเก็บไว้ที่ /home/oracle/Downloads ของ rac1 เครื่องเดียว เข้าระบบด้วย ผู้ใช้ oracle เปิด terminal unzip สร้าง User Equivalence (Key-Based Authentication) ระหว่าง rac1 และ rac2 จากนั้นตามด้วยคำสั่ง พิมพ์ yes…

Grid Infrastructure 18c ตอน 2

ตอนสองจัดการ Shared disk ล็อคอินด้วยผู้ใช้ oracle เปิด terminal พิมพ์คำสั่ง ต่อไปนี้ เพื่อเป็น root เมื่อถามรหัสผ่าน ให้ใส่รหัสผ่านของ oracle ตรวจสอบ shared disk ด้วยคำสั่ง*** หากไม่สามารถ ls -l /dev/mapper/mpath? ได้ ให้ตรวจสอบว่ามีแฟ้ม /etc/multipath.conf หรือไม่ หากไม่มีให้สั่งคำสั่งต่อไปนี้ จะเห็นว่ามี mpatha ถึง mpathf สร้าง partition บน mpatha ถึง mpathf ด้วยคำสั่ง สร้าง partition…

Grid infrastructure 18c ตอน 1

รอบนี้จะมาติดตั้ง Oracle grid infrastructure 18c กัน สิ่งที่ต้องเตรียม Vmware 2 เครื่อง โดยแต่ละเครื่องมีคุณสมบัติดังนี้ (ปรับลดตามความเหมาะสมได้) 2 CPU 64 core 128 GB Memory HDD 2 ลูก 300GB 1TB Shared Storage ครั้งนี้เลือกใช้ iSCSI 6 ลูกลูกละ 1TB Network Card 3 ใบ IP address โดย 4 IP…

การสร้าง Flow ใน Microsoft SharePoint

ผมใช้งาน SharePoint สำหรับจัดเก็บ data เพราะว่าเป็นวิธีที่สะดวก เนื่องจากหน่วยงานมีให้ใช้งานอยู่แล้ว ผมได้สร้าง List เพื่อบันทึกรายการ (item) เกี่ยวกับ การจัดการความเสี่ยง เอาไว้ใน subsite ชื่อ RISK เมื่อบันทึกไปสักระยะ พบว่า เมื่อถึงรอบถัดไปในการประเมินเพื่อการจัดการความเสี่ยง หากต้องคีย์ข้อมูลใหม่ทีละรายการ ทั้ง ๆ ที่ ข้อมูลส่วนมากจะเหมือนกับรอบก่อนหน้านี้ จึงคิดว่า น่าจะมีวิธีการ คัดลอกรายการบรรทัดที่ต้องการ ทุกคอลัมน์ มาเป็นรายการใหม่ ค้นหาดูใน SharePoint จะมีเครื่องมือที่เรียกว่า Flow ซึ่งจะเป็นส่วนที่ SharePoint เรียกว่า Power Automate ให้ใช้งาน แต่เราต้องสร้าง…

ORA-31623: a job is not attached to this session via the specified handle

ปัญหา พยายามใช้ expdp แล้วเกิด error UDE-31623: operation generated ORACLE error 31623ORA-31623: a job is not attached to this session via the specified handleORA-06512: at “SYS.DBMS_DATAPUMP”, line 3905ORA-06512: at “SYS.DBMS_DATAPUMP”, line 5203ORA-06512: at line 1 งานมา… เมื่อค้นข้อมูลไปเรื่อย ๆ จะพบว่าอาจเกี่ยวของกับการปรับแต่งค่าต่างๆ เกี่ยวกับ memory…

Oracle User expire โดยไม่ทราบสาเหตุ

นักพัฒนาบางท่านที่เพิ่งเริ่มพัฒนาระบบบนฐานข้อมูล Oracle อาจจะเคยเจอปัญหาเมื่อใช้ Oracle ตั้งแต่เวอร์ชัน 11 เป็นต้นไป นั่นคือ เมื่อสร้าง user บน Oracle และใช้งานไปได้ซักระยะอยู่ ๆ user นี้ก็เกิดก็ expire โดยที่ไม่ได้มีใครเข้าแก้ไขการตั้งค่าของ user นี้ ซึ่งเหตุการณ์นี้อาจจะมีสาเหตุแบบเดียวกับที่จะนำเสนอในบทควาามนี้ก็เป็นได้ หมายเหตุ ในบทความนี้จะใช้ Oracle SQL Developer ซึ่งเป็นเครื่องมือในการเข้าถึงและจัดการฐานข้อมูล Oracle มาช่วยในการอธิบายเพื่อให้เห็นภาพได้ง่ายขึ้น ขั้นตอนการตรวจสอบที่มาของปัญหาและการแก้ไข login ด้วย sys ตรวจสอบการตั้งค่า Default Profile โดยเลือกเมนู View –> DBA…

คำสั่ง Update โดยใช้ข้อมูลจากอีกตาราง [Oracle]

ในการสั่ง update ข้อมูล ในบางครั้งเราอาจจะเจอโจทย์ว่า ต้องการ update ข้อมูลในตารางหนึ่งโดยใช้ข้อมูลจากอีกตารางหนึ่ง ซึ่งลักษณะของข้อมูลทั้งสองตารางนี้ จะต้องมีฟีลด์ข้อมูลที่สามารถเชื่อมโยงความสัมพันธ์ของข้อมูลแต่ละเร็คคอร์ดได้ ตัวอย่างข้อมูล มีข้อมูลสองตาราง ตารางที่ 1 เก็บข้อมูลวันในหนึ่งสัปดาห์ภาษาไทย [ชื่อตาราง : DAY_OF_WEEK_THAI] โครงสร้างตารางประกอบด้วย ฟีลด์ ID เก็บ ID ของแต่ละเร็คคอร์ด ฟีลด์ DAY_FULL เก็บข้อมูลวันแบบเต็มภาษาไทย ฟีดล์ DAY_SHORT เก็บข้อมูลวันแบบย่อภาษาไทย ข้อมูลในตารางเป็นดังนี้ ตารางที่ 2 เก็บข้อมูลวันในหนึ่งสัปดาห์ภาษาอังกฤษ [ชื่อตาราง : DAY_OF_WEEK] โครงสร้างตารางประกอบด้วย ฟีลด์ ID เก็บ…

[กันลืม] ปรับแต่ง MySql/Mariadb ให้โหลดข้อมูลได้เร็วขึ้น

เพื่อให้ดาต้าเบส (Database) ทำงานได้อย่างเต็มประสิทธิภาพและสามารถใช้ทรัพยาการของเครื่องเซิร์ฟเวอร์ (Server) ได้เต็มศักยภาพของเครื่องเมื่อติดตั้งเสร็จก็จะควรมีการปรับแต่งค่าให้เหมาะสมกับการใช้งาน สำหรับ Linux ให้แก้ไขไฟล์ /etc/mysql/my.cnf สำหรับ Windows (XAMPP) ให้แก้ไขไฟล์ C:\xampp\mysql\bin\my.ini มาเริ่มกันเลย! ปัจจุบัน MySql/Mariadb เวอร์ชั่นใหม่จะใช้เอนจินแบบ InnoDB เป็นค่าเริ่มต้น ฉะนั้นเราจะโฟกัสความสำคัญเฉพาะการตั้งค่า InnoDB โดยเฉพาะค่า innodb_buffer_pool_size ควรกำหนดให้ไม่เกิน 70-80% ของขนาด RAM มีตัวย่างการค่าคอนเฟิกดังนี้ (สมมุติสเปกเครื่องเซิร์ฟเวอร์ CPU 4 core  RAM 4 GB) คำสั่งคิวรีที่ใช้ตรวจสอบค่าที่เหมาะสมของ innodb_buffer_pool_size เมื่อใช้ดาต้าเบสไปได้ 1-2…