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 แล้วใส่รหัสผ่านของ rac2 ทดสอบ ต้องได้ผลลัพธ์ประมาณว่า ทำซ้ำที่ rac2 ติดตั้ง cvuqdisk.rpm ด้วยคำสั่ง ส่งไฟล์ cvuqdisk-1.0.10-1.rpm ไปให้ rac2 ติดตั้ง cvuqdisk ที่ rac2 ด้วยคำสั่ง สั่งคำสั่งต่อไปนี้ ที่ rac1 และ rac2 สั่งคำสั่งต่อไปนี้ที่ rac1 ต้องได้ผลเป็น PASSED ทั้งหมด จบเตรียมเครื่อง

Read More »

Grid Infrastructure 18c ตอน 2

ตอนสองจัดการ Shared disk ล็อคอินด้วยผู้ใช้ oracle เปิด terminal พิมพ์คำสั่ง ต่อไปนี้ เพื่อเป็น root เมื่อถามรหัสผ่าน ให้ใส่รหัสผ่านของ oracle ตรวจสอบว่ามีแฟ้ม /etc/multipath.conf หรือไม่ หากไม่มีให้สั่งคำสั่งต่อไปนี้ ตรวจสอบ shared disk ด้วยคำสั่ง จะเห็นว่ามี mpatha ถึง mpathf สร้าง partition บน mpatha ถึง mpathf ด้วยคำสั่ง สร้าง partition ใหม่ตามขั้นตอนเดิม n แล้ว enter 4 ครั้ง แล้วกด w แล้ว enter ทำจนครบ ถึง mpathf เนื่องจากเป็น shared disk แบ่ง partition ที่เดียวก็จะได้ทั้งสองเครื่อง ที่ rac2 เข้าระบบด้วย oracle แล้วเป็น root ด้วยคำสั่ง แล้วพิมพ์คำสั่งต่อไปนี้เพื่อ update ตาราง partition กลับมาที่ rac1 ติดตั้ง oracleasm-support และ kmod-oracleasm ด้วยคำสั่ง ตั้งค่า oracleasm ด้วยคำสั่ง แล้วกรอกตามภาพ โหลด kernel module ด้วยคำสั่ง ได้ผลดังภาพ ทำซ้ำอีกครั้งที่ rac2 กลับมา rac1 พิมพ์คำสั่งต่อไปนี้เพื่อสร้าง oracleasm disk โดย DISK* คือขื่อ disk ที่ rac2 พิมพ์คำสั่ง ที่ rac1 terminal พิมพ์ exit พิมพ์ oracleasm listdisks ที่ rac2 terminal พิมพ์ exit พิมพ์ oracleasm listdisks ต้องได้ผลเหมือนกันทั้งสองเครื่อง จบจัดการ shared disk

Read More »

วิธีเรียกข้อมูล ข้าม Database บน Postgresql

บน Postgresql สามารถเรียกข้อมูลข้าม Database ได้ แต่ต้องสั่งติดตั้ง dblink extension ก่อน ด้วยคำสั่ง จากนั้น ใช้คำสั่ง dblink() ใน FROM clause ซึ่ง Function นี้ จะต้อง return records มา ซึ่งเราจะต้องกำหนดชนิดของข้อมูลด้วย ดังตัวอย่างนี้ เป็นการเรียกไปยัง Database ชื่อ otherdatabase, Schema ชื่อ schema_name และเรียกข้อมูลจาก Table ชื่อ sometable โดยมี field ชื่อ id, fullname, dob หลังคำสั่ง dblink ต้องกำหนด้วยว่า records ที่ได้กลับมา มี Datatype เป็นอะไรบ้าง ในตัวอย่างข้างต้น กำหนด id เป็น Integer, fullname เป็น Text และ dob (วันเกิด — Date of birth) เป็น Date แต่ถ้าอีก Database นั้น ให้สิทธิ์ user ที่ติดต่อเข้าไป ไม่ใช่ super user จะต้องระบุ username, password ดังตัวอย่างนี้ เป็นการติดต่อ Database: otherdatabase, User: db_username, Password: db_password, Schema: schema_name หวังว่าจะเป็นประโยชน์ครับ

Read More »

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 วงเดียวกัน 3 IP สำหรับชื่อเรียกใน DNS วงเดียวกันกับ 4 IP แรก 2 IP คนละวง rac1 1 IP สำหรับการ์ดใบแรก เป็น IP ประจำเครื่อง หรือเรียก Public IP (ens192) rac2 1 IP สำหรับการ์ดใบแรก เป็น IP ประจำเครื่อง หรือเรียก Public IP (ens192) rac1-vip 1 IP เป็น virtual IP ไม่ต้องใส่ในการ์ดแลน วงเดียวกันกับ IP ประจำเครื่อง เรียก Virtual IP rac2-vip 1 IP เป็น virtual IP ไม่ต้องใส่ในการ์ดแลน วงเดียวกันกับ IP ประจำเครื่อง เรียก Virtual IP rac-scan 3 IP ต้องจดชื่อนี้ใน DNS ด้วยโดยจดเป็น round robin วงเดียวกันกับ IP ประจำเครื่อง เรียก Scan name rac1-priv 1 IP สำหรับการ์ดใบที่สอง เป็น IP สำหรับคุยกันเองใน cluster คนละวงกับ IP ประจำเครื่อง เรียก Private IP (ens224) วงเดียวกับ rac2-priv rac2-priv 1 IP สำหรับการ์ดใบที่สอง เป็น IP สำหรับคุยกันเองใน cluster คนละวงกับ IP ประจำเครื่อง เรียก Private IP (ens224) วงเดียวกับ rac1-priv rac1-storage 1 IP สำหรับเชื่อมต่อ iSCSI ติดต่อผู้ดูแล iSCSI (ens256)*** rac2-storage 1 IP สำหรับเชื่อมต่อ iSCSI ติดต่อผู้ดูแล iSCSI (ens256)*** Download Software Oracle Enterprise Linux 7.9 Grid Infrastructure 18c Oracle Database 18c โหลดได้ที่ https://edelivery.oracle.com Oracle Enterprise Linux 7.9 เลือกติดตั้งดังรูปได้แก่ Date & Time เลือก Timezone ที่ถูกต้อง Asia/Bangkok Keyboard English (US), Thai Software Selection เลิอกเป็น Server with GUI

Read More »

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

ผมใช้งาน SharePoint สำหรับจัดเก็บ data เพราะว่าเป็นวิธีที่สะดวก เนื่องจากหน่วยงานมีให้ใช้งานอยู่แล้ว ผมได้สร้าง List เพื่อบันทึกรายการ (item) เกี่ยวกับ การจัดการความเสี่ยง เอาไว้ใน subsite ชื่อ RISK เมื่อบันทึกไปสักระยะ พบว่า เมื่อถึงรอบถัดไปในการประเมินเพื่อการจัดการความเสี่ยง หากต้องคีย์ข้อมูลใหม่ทีละรายการ ทั้ง ๆ ที่ ข้อมูลส่วนมากจะเหมือนกับรอบก่อนหน้านี้ จึงคิดว่า น่าจะมีวิธีการ คัดลอกรายการบรรทัดที่ต้องการ ทุกคอลัมน์ มาเป็นรายการใหม่ ค้นหาดูใน SharePoint จะมีเครื่องมือที่เรียกว่า Flow ซึ่งจะเป็นส่วนที่ SharePoint เรียกว่า Power Automate ให้ใช้งาน แต่เราต้องสร้าง Flow ขึ้นมาก่อน โดยต้องระบุเองว่า เราจะเอาคอลัมน์ไหนบ้าง และ ต้องการใช้สูตรคำนวณ (formula) ด้วยมั้ย เช่น มีคอลัมน์ที่แสดงค่า รอบที่ เมื่อประเมินรอบใหม่จะต้องเพิ่มรอบที่ เช่น เดิมเป็นรอบที่ 8 เมื่อคัดลอกเป็นรายการใหม่ คอลัมน์ที่เก็บ รอบที่ ก็จะกลายเป็น 9 ให้เอง อย่างนี้เป็นต้น หลังจากศึกษาหาทางจาก Google search ก็พบว่า Microsoft SharePoint มีคำแนะนำเยอะพอสมควร จึงคิดว่า อยากจะบันทึกไว้กันลืม วิธีสร้างก็ค่อนข้างยาว มีดังนี้ การสร้าง Flow ขั้นตอน ที่เมนูด้านบนของ List ที่กำลังใช้งาน ให้คลิกที่ Automate และเลือก Power Automate เลือก See your flows หากเป็นครั้งแรก ในหน้าต่างก็จะไม่มีรายการ Flow ที่เมนูด้านซ้าย ให้คลิกที่ Create และเลือก Instant flow จะได้หน้าต่าง Build an instant flow จะมีช่องให้ตั้งชื่อ flow จะตั้งชื่อว่า Clone Selected Item ต่อไปก็เลื่อนหารายการ tigger ที่ให้เลือกใช้ ก็ให้เลือกอันที่เขียนว่า For a selected item SharePoint ใส่ข้อมูลในช่อง Site Address โดยเลือกจาก drop down list ใส่ข้อมูลในช่อง List name โดยเลือกจาก drop down list คลิก New step หน้าต่าง Choose an action ในช่อง search ใส่คำว่า sharepoint เพื่อบีบ scope ให้แคบลง และเลื่อนหารายการจนเจอคำว่า Get item จะมีหน้าต่างโผล่มาทางขวา ใต้แท็บ Dynamic content ให้เลือก ID จะได้ดังรูปข้างล่างนี้ ต่อไปคลิก New Step จะได้หน้าต่าง Choose an action อีกครั้ง ที่นี้ในช่อง search ใส่คำว่า sharepoint create เพื่อบีบ scope ให้แคบลง และเลื่อนหารายการจนเจอคำว่า Create item ทยอยใส่ทีละคอลัมน์ โดยเลือกจาก Dynamic content แต่หากต้องการการคำนวณ ให้คลิกแท็บ Expression จนครบทุกคอลัมน์ที่ต้องการคัดลอก การใช้สูตรคำนวณ ขั้นตอน ในขั้นตอน Create item เมื่อมีคอลัมน์ที่จะคำนวณ เช่น คอลัมน์ “รอบที่” บวกเพิ่ม 1 ให้เลือก Expression แล้วใส่สูตรคำนวณ ตัวอย่าง add(outputs(‘Get_item’),1) เป็นต้น การใช้งาน

Read More »