แสดงบทความที่มีป้ายกำกับ Database แสดงบทความทั้งหมด

วันเสาร์ที่ 31 ตุลาคม พ.ศ. 2558

[HOW TO] Script Backup Mysql Log (Shell Script)

[HOW TO] Script Backup Mysql Log (Shell Script)



#!/bin/bash
###################################################
#      ____             _               ____      #
#     / ___|_   _ _   _| |_ ___  _ __  / ___|     #
#    | |  _| | | | | | | __/ _ \| '_ \| |  _      # 
#    | |_| | |_| | |_| | || (_) | | | | |_| |     #
#     \____|\__,_|\__,_|\__\___/|_| |_|\____|     #
#                                                 #
###################################################
#            ScriptMySqlLogBackup.sh              #
###################################################

timestamp=$(date +"%Y%m%d")
MyHost="localhost"
MyUser="root"
MyPass=""
logDir="/var/log/mysql"
moveToDir=""

echo "[INFO] $(date +"%Y%m%d %T") : mysql log backup start";

mv $logDir/mysql.log $logDir/mysql.log.$timestamp
mv $logDir/mysql_error.log $logDir/mysql_error.log.$timestamp
mv $logDir/mysql-slow.log $logDir/mysql-slow.log.$timestamp

if [ -f "$logDir/mysql.log" ]
then
   echo "[WARN] $(date +"%Y%m%d %T") : mysql.log Move Failed";
else
   echo "[INFO] $(date +"%Y%m%d %T") : mysql.log Move Successed";
fi

if [ -f "$logDir/mysql_error.log" ]
then
   echo "[WARN] $(date +"%Y%m%d %T") : mysql_error.log Move Failed";
else
   echo "[INFO] $(date +"%Y%m%d %T") : mysql_error.log Move Successed";
fi

if [ -f "$logDir/mysql-slow.log" ]
then
   echo "[WARN] $(date +"%Y%m%d %T") : mysql-slow.log Move Failed";
else
   echo "[INFO] $(date +"%Y%m%d %T") : mysql-slow.log Move Successed";
fi

if [ -n "$MyPass" ]
then
   /usr/bin/mysqladmin --host=$MyHost --user=$MyUser --password=$MyPass flush-logs
else 
   /usr/bin/mysqladmin --host=$MyHost --user=$MyUser flush-logs
fi

echo "[INFO] $(date +"%Y%m%d %T") : flush-logs Successed";

zip $logDir/mysql.log.$timestamp.zip $logDir/mysql.log.$timestamp
zip $logDir/mysql_error.log.$timestamp.zip $logDir/mysql_error.log.$timestamp
zip $logDir/mysql-slow.log.$timestamp.zip $logDir/mysql-slow.log.$timestamp

if [ -f "$logDir/mysql.log.$timestamp.zip" ]
then
   echo "[INFO] $(date +"%Y%m%d %T") : mysql.log.$timestamp zip Successed";
   rm -rf $logDir/mysql.log.$timestamp
   echo "[INFO] $(date +"%Y%m%d %T") : mysql.log.$timestamp Deleted";
else 
   echo "[WARN] $(date +"%Y%m%d %T") : mysql.log.$timestamp zip Failed";
fi

if [ -f "$logDir/mysql_error.log.$timestamp.zip" ]
then
   echo "[INFO] $(date +"%Y%m%d %T") : mysql_error.log.$timestamp zip Successed";
   rm -rf $logDir/mysql_error.log.$timestamp
   echo "[INFO] $(date +"%Y%m%d %T") : mysql_error.log.$timestamp Deleted";
else 
   echo "[WARN] $(date +"%Y%m%d %T") : mysql_error.log.$timestamp zip Failed";
fi

if [ -f "$logDir/mysql-slow.log.$timestamp.zip" ]
then
   echo "[INFO] $(date +"%Y%m%d %T") : mysql-slow.log.$timestamp zip Successed";
   rm -rf $logDir/mysql-slow.log.$timestamp
   echo "[INFO] $(date +"%Y%m%d %T") : mysql-slow.log.$timestamp Deleted";
else 
   echo "[WARN] $(date +"%Y%m%d %T") : mysql-slow.log.$timestamp zip Failed";
fi


if [ -n "$moveToDir" ]
then
   if [ -f "$logDir/mysql.log.$timestamp.zip" ]
   then
       mv $logDir/mysql.log.$timestamp.zip $moveToDir/mysql.log.$timestamp.zip
       echo "[INFO] $(date +"%Y%m%d %T") : move mysql.log.$timestamp.zip to $moveToDir";
   else 
      echo "[WARN] $(date +"%Y%m%d %T") : mysql.log.$timestamp.zip not found or move Failed";
   fi

   if [ -f "$logDir/mysql_error.log.$timestamp.zip" ]
   then
      mv $logDir/mysql_error.log.$timestamp.zip $moveToDir/mysql_error.log.$timestamp.zip
      echo "[INFO] $(date +"%Y%m%d %T") : move mysql_error.log.$timestamp.zip to $moveToDir";
   else 
      echo "[WARN] $(date +"%Y%m%d %T") : mysql_error.log.$timestamp.zip not found or move Failed";
   fi

   if [ -f "$logDir/mysql_error.log.$timestamp.zip" ]
   then
       mv $logDir/mysql_slow.log.$timestamp.zip $moveToDir/mysql_slow.log.$timestamp.zip
       echo "[INFO] $(date +"%Y%m%d %T") : move mysql_slow.log.$timestamp.zip to $moveToDir";
   else 
      echo "[WARN] $(date +"%Y%m%d %T") : mysql_slow.log.$timestamp.zip not found or move Failed";
   fi
else 
   echo "[WARN] $(date +"%Y%m%d %T") : Move Failed";
fi

echo "[INFO] $(date +"%Y%m%d %T") : mysql log backup finish";
#============================
#edit ScriptMySqlLogBackup.sh
#============================
MyHost="localhost"
MyUser="root"
MyPass=""
logDir="/var/log/mysql"

#============================
#edit crontab
#============================
crontab -e

0 23 * * * /path/to/ScriptMySqlLogBackup/ScriptMySqlLogBackup.sh > /path/to/ScriptMySqlLogBackup/ScriptMySqlLogBackup.log

วันพุธที่ 27 สิงหาคม พ.ศ. 2557

[HOW TO] Setting Oracle Linux 7 สำหรับ Oracle Database 12c

การตั้งค่า Oracle Linux 7 สำหรับ Oracle Database 12c

ในการที่จะติดตั้ง Oracle Database 12c เราจำเป็นต้องมีการจัดการทั้ง 3 อย่างที่สำคัญ
-Network
-Packet
-Kernel Parameter
GuutonG

เริ่มจากการตั้งค่า Network กันก่อนเลย
1.ให้เราเข้ามาที่ Oracle Linux 7.0 ก่อนเลยแล้วคลิกไปที่ Application-->Setting

GuutonG

2.แล้วเลือกมาที่ Network 

GuutonG

3.เลือกมาที่ Wired ที่หมายถึง มีสาย ให้เราไปที่ รูป เพื่อเปลี่ยน IP และ Subnet Mask


4.เลือกมาที่ IPv4 ตรง Address เปลี่ยนเป็น Manual ในที่นี้ผมได้ลง Linux ลงใน Virtual Box ผมเลยตั้งค่า IP ของ Server เป็น 
Address:192.168.56.101
Netmask:255.255.255.0
Gateway:192.168.56.1 (เป็น IP ของเครื่องผมที่ Virtual Box แจกมา)

GuutonG

 5.ต่อไปเป็นการตั้ง host domain มาเลือกที่ Sharing

GuutonG

 6.ให้เปลี่ยนจาก localhost.localdomain เป็นตามที่ต้องการ ในที่นี้เป็น ol7 (ส่วน .localdomain ก็ถ้ามี domain ก็ลองใส่ดูครับ)


GuutonG

 7. ถ้าเราเปลี่ยนได้ให้สังเกตที่ Terminal ว่าเป็น ol7 หรือยัง


GuutonG

 8.คราวนี้ลอง ping ol7 ดูว่าผ่านไหมถ้ายังไม่ได้เราต้องไปแก้ไฟล์ hosts ของ OS โดยใช้คำสั่ง
#vi /etc/host

GuutonG

 9.ให้เพิ่มที่บรรทัดสุดท้ายว่า 192.168.56.101 ol7 แล้วเซฟ (ในการใช้ vi หรือ text editor ของ linux 
ต้องศึกษาเพิ่มเติม การใช้งาน vi editor เบื้องต้น)

GuutonG

 10.ลอง ping ol7 ใหม่ดูคราวนี้ก็จะ ping ผ่าน


GuutonG


สุดท้ายแล้ว Packet กับ Kernel Parameter ผมจะทำการตั้งค่าไปพร้อมกับตอนลง Oracle database 12c

วันอาทิตย์ที่ 24 สิงหาคม พ.ศ. 2557

[HOW TO] Install Oracle Linux 7 สำหรับ Oracle Database 12c

การติดตั้ง Oracle Linux 7 สำหรับ Oracle Database 12c

1.เลือก Install Oracle Linux 7.0
2. เลือกภาษาให้กับ Oracle Linux 7.0 คลิกที่ปุ่ม Continue
3.เป็นหน้าส่วนการตั้งค่าพื้นฐานต่างๆของ Oracle Linux 7.0 ให้คลิกที่ INSTALLATION DESTINATION
4.หน้านี้เป็นส่วนการจัดการดิสเลือกพื้นที่ที่จะติดตั้ง จากนั้น คลิกที่ปุ่ม Done
5.คลิกที่ SOFTWARE SELECTTION เพื่อเลือกลง Packet พื้นฐานที่จะใช้
6.หน้านี้จะมีให้เลือกลงหลายอย่าง แต่สำหรับเตรียมที่จะติดตั้ง Oracle Database 12c จะเลือกที่ Server with GUI à Compatibility Libraries และ Development Tools คลิกที่ปุ่ม Done
7.คลิกที่ปุ่ม Begin Installation เพื่อทำการติดตั้ง
8.ระหว่างการติดตั้งใน Oracle Linux 7.0 จะให้เราสามารถสร้าง Root Password กับสร้าง User ได้
มาคลิกที่ Root Password เพื่อสร้าง Root Password กัน
9. ทำการตั้ง Password จะตั้งอะไรก็ได้ให้จำได้ ในที่ใช้ manager1 แล้วทำการใส่ Password ยืนอีกรอบ แถบข้างล่างแค่บอกเราว่า Password เราง่ายไป แล้วคลิกที่ปุ่ม Done 
10.เครื่องหมาย “!” ได้หายไปแล้ว มาทำการเลือกที่ USER CREATION เพื่อสร้าง User ต่อเลย
11.ทำการใส่ Full Name และ Password ในที่นี้ใช้ Full Name=”oracle” และ Password=”manager1”แล้วคลิกที่ปุ่ม Done
12.ทำการคลิกที่ปุ่ม Finish configuration
13.แล้วรอสักพัก
14.พอเสร็จแล้วทำการคลิกที่ปุ่ม Reboot เพื่อให้ Oracle Linux 7.0 เริ่มระบบใหม่
15.หน้าเริ่ม Oracle Linux 7.0 ใหม่ s
16.ในหน้านี้จะถามถึง LICENSE INFORMATION ให้คลิกเข้าไป
17.จะมีข้อตกลงและเงื่อนไขต่างๆ ให้ติ๊กที่ I accept License agreement. แล้วคลิกที่ปุ่ม Done
18.จากนั้น คลิกที่ FINISH CONFIGURATION
19.การตั้งค่า Kdump (Kernel Crash Dumping mechanism) คือต้องการให้เก็บค่าระหว่างที่ระบบมีปัญหาหรือไม่ (แค่ทดสอบ) ไม่ต้องเลือกอะไร แล้วให้คลิกที่ปุ่ม Forward แล้วคลิก No เพื่อที่จะทำงานในขั้นตอนถัดไป
20.ในหน้านี้ไม่ต้องอัพเดทอะไร เลือกเป็น No, I prefer to register at a last time คลิกที่ปุ่ม Forward
21.ถามเพื่อยืนยันอีกรอบคลิกที่ปุ่ม No thanks, I’ll connect later. แล้วคลิกที่ปุ่ม Forward อีกทีเป็นการเสร็จสิ้น

22.ทำการเลือก User แล้วใส่ Password เพื่อ Login เข้า Oracle Linux 7.0
23.เข้ามาก็ทำการตั้งค่าภาษาแล้วคลิกที่ปุ่ม Next
24.เลือกภาษาสำหรับคีย์บอร์ด คลิกที่ปุ่ม Next
25.เป็นอันเสร็จสิ้นคลิกที่ปุ่ม Start Using Oracle Linux Server
26.เตรียม Oracle Linux 7.0 รอที่จะติดตั้ง Oracle Database 12c ต่อไป