Posts Tagged ‘server’

ซ่อม database mysql

เมื่อวานถึงกับมึน ว่าอยู่ๆ มันก็พังไปซะงั้น ทั้งๆ ทั้ก็ไม่ได้ทำอะไรนี่นา T_T

เริ่งเกิดที่ http://www.thaihosttalk.com/index.php?topic=20692.0 นี่ครับ

นั่งทำนานแสนนานกับ mysql ตกลงแล้ว database พัง แล้วไปพังที่ใหนรู้ใหมครับ mysql.user ให้ตายซิ run mysql ก็ไ่ม่ได้

พี่ไก่ thaitumweb เลยให้ซ่อมซะคือ

myisamchk -r user.MYI

ได้ครับ โหคราวนี้ ซ่อมหมดเลยดังนี้

myisamchk -r /var/lib/mysql/*/*.MYI

ไปหลาย database เลย อะไรมันจะซวยปานนี้ ใครที่ทำกันกันตรวจกันบ่อยๆนะ

เวลาทำ server ตัวนึงต้อง config อะไรบ้างมาดู

Setup Checklist for CentOS 5.1 x 64bit
=============================-Config SSHD
-Config Firewall Rules
-Install Screen
-Setup DirectAdmin 1.322
-Install Spamassassin (./spam.sh)
-Install Freetype
-Install GD
-Config Spamassassin (exim.conf)
-Convert to Dovecot (build) 1.0.13
-Upgrade to Apache 2.2.6
-Upgrade to PHP 5.2.5
-ClamAV
-Config Exim to ClamAV (exim_clam)
-PHP.INI Disable_functions
-Mod_Security
-Mod_Evasive
-Mod Perl
-Install MRTG
-Install ZendOptimizer
-Install eAccelerator
-Chkrootkit / Rkhunter
-BFD Monitoring Tool with Firewall Integrated
-Config Webmail support Thai
-Webmail.Domainname.com
-enable realtime blocklists (RBLs)
-enable Spamassin for new accounts
-Log 90 Day
-Tune Apache
-Tune MySql

Pear Allowed memory size of 8388608 bytes exhausted

ถ้าแก้ยังไงก็แก้ไม่หายให้ทำแบบนี้ครับ

ให้เข้าไปแก้ Shell ของ pear เลยนะครับเป็นการเริ่มทำงาน pear เลยนะครับ

ลองใช้คำสั่ง which pear ดูนะครับว่า pear อยู่ที่ใหน แล้วให้ทำการใส่ -d memory_limit=36Mเข้าไปในบรรทัดล่างๆ แบบนี้ครับ

exec $PHP -C -q $INCARG -d output_buffering=1 -d open_basedir=”" -d safe_mode=0 $INCDIR/pearcmd.php “$@”

to

exec $PHP -C -q $INCARG -d output_buffering=1 -d open_basedir=”" -d memory_limit=36M -d safe_mode=0 $INCDIR/pearcmd.php “$@”
ลองดูครับ

ประเภทของserver

เซิร์ฟเวอร์แบ่งเป็นกี่ประเภท

ประเภทของเซิร์ฟเวอร์ ต้องการนำมานำเซิร์ฟเวอร์ประเภท โดยปกติจะแบ่งตามการใช้งานได้เป็น 4 ประเภท คือ File Server , Print Server , Database Server , Application Server หรือ เก็บ-บริการไฟล์ บริการ/บริหาร งานพิมพ์ เก็บและบริการฐานข้อมูล และบริการ/บริหารซอฟต์แวร์ประยุกต์

ส่วน Mail Server, Internet Server หรือประเภทอื่นๆที่มีการเรียกชื่อนั้น เกิดจากการนำเอาเซิร์ฟเวอร์มากกว่า 2 ประเภทมารวมกันในตัวเดียว

File Server

เป็นเซิร์ฟเวอร์ที่มีหน้าที่จัดเก็บไฟล์ โดยการจัดเก็บไฟล์จะทำเสมือนเป็นฮาร์ดดิสก์รวมศูนย์ (Centerized disk storage) เสมือนว่าผู้ใช้งานทุกคนมีที่เก็บข้อมูลอยู่ที่เดียว เพราะควบคุม-บริหารง่าย การสำรองข้อมูล การ Restore ง่าย ข้อมูลดังกล่าวสามารถ Shared ให้กับ Client ได้ โดยส่วนมากข้อมูลที่อยู่ใน File Server คือ โปรแกรมและข้อมูล (Personal Data File) โดยปกติแล้วเซิร์ฟเวอร์ไม่มีหน้าที่ต้องประมวลข้อมูลเหล่านี้ เป็นเพียงแหล่งเก็บข้อมูล กล่าวง่ายๆ ก็คือ File Server ทำหน้าเสมือน Input/Output สำหรับไฟล์

การทำงานของเซิร์ฟเวอร์ที่เป็น File Server นั้น ในทางเทคนิคแล้วยังไม่เรียกว่าเป็น “Client/Server” เพราะไม่มีการแบ่งโหลดการทำงานระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ แต่หน้าที่ที่ File Server จะต้องจัดการคือ มี NOS (Network Operating System) ที่ดูแลเกี่ยวกับการ “เข้าถึง” ไฟล์ ต้องมีกระบวน “Lock” ไว้ ไม่ให้เกิดความซ้ำซ้อนในการแก้ไขไฟล์ เช่น ขณะที่ผู้ใช้งานคนที่ 1 เปิด ไฟล์ A และกำลังแก้ไข (edit) อยู่ ผู้ใช้งานคนที่สองจะเปิดไฟล์ A เพื่อแก้ไขไม่ได้ (แต่เปิดเพื่ออ่าน Read Only ได้) แต่ถ้าหากข้อมูลนั้นเป็น Database แทนที่ไฟล์หรือฐานข้อมูลทั้งฐานข้อมูลจะถูก Lock กระบวนการ Lock ก็อาจจะเกิดเฉพาะ Record (Row) นี้เป็นหน้าที่ของ NOS และ Application ที่ใช้งาน

Print Server

หนึ่งเหตุผลที่ต้องมี Print Server ก็คือ เพื่อแบ่งให้พรินเตอร์ราคาแพงบางรุ่นที่ออกแบบมาสำหรับการทำงานมากๆ เช่น HP Laser 5000 พิมพ์ได้ 10 – 24 แผ่นต่อนาที พรินเตอร์ประเภทนี้ ความสามารถในการทำงานสูง ถ้าหากซื้อมาเพื่อใช้งานเพียงคนเดียว แต่ละวันพิมพ์ 50 แผ่น ก็ไม่คุ้มค่า ดังนั้นจึงต้องมีกระบวนการจัดการแบ่งปันพรินเตอร์ดังกล่าวให้กับผู้ใช้ทุกๆคนในสำนักงาน หน้าที่ในการแบ่งปัน ก็ประกอบด้วย การจัดคิว ใครสั่งพิมพ์ก่อน การจัดการเรื่อง File Spooling เป็นของเซิร์ฟเวอร์ ที่มีชื่อว่า Print Server

โดยส่วนใหญ่ในองค์กร น้อยองค์กรที่จะซื้อเซิร์ฟเวอร์มาเพื่อใช้สำหรับเป็น Print Server โดยเฉพาะ แต่จะใช้วิธีเอาเซิร์ฟเวอร์ที่ซื้อมาเพื่อเป็น File Server , Data Base server ทำเป็น Print Server ไปด้วย

Database Server

Database Server หมายถึง เซิร์ฟเวอร์ที่มีไว้เพื่อรันระบบที่เป็นฐานข้อมูล DBMS (DataBase Managment System ) เช่น SQL , Informix เป็นต้น โดยภายในเซิร์ฟเวอร์ที่มีทั้งฐานข้อมูลและตัวจัดการฐานข้อมูล ตัวจัดการฐานข้อมูลในที่นี้หมายถึง มีการแบ่งปัน การประมวลผล โดยผ่านทางไคลเอ็นต์

Application Server

ส่วนใหญ่ process ที่ถูกรันเป็น server จะเรียกว่า Daemon แล้วเวลารันชื่อ process จะตามด้วย อักษร d เช่น

httpd

sshd

mysqld

นี่เป็น process ที่ได้รับความนิยมและเห็นกันบ่อยๆครับ

Application Server คือ เซิร์ฟเวอร์ที่รันโปรแกรมประยุกต์ได้ด้วย โดยการทำงานสอดคล้องกับไคลเอ็นต์ เช่น Mail Server (รัน MS Exchange Server) Proxy Server (รัน Proxy Server) หรือ Web Server (รัน Web Server Program เช่น Xitami , Apache’ )

Application ที่ได้รับความนิยมและเห้นการใช้งานได้บ่อยๆ คือ

web server

apache process

lighttpd process

อื่นๆ

database server

Oracle process

Mysql process

Postgres process

อื่นๆ

Mail server

mail

smtp

อื่นๆ

sshd (secure shell process)

Dump Database Mysql

วันนี้กำลังจะ dump database ครับ แต่ดันไม่อยู่ในมหาลัยทำยังไงล่ะครับ เครื่องทร่ทำงานก็ไม่มี domain name ไม่มี ip จริงซะด้วยก็เลยต้อง ssh เข้าไปในเครื่องที่ต่อจากข้างนอกได้แล้วก็ ssh เข้าไปที่เครื่องอกีรอบครับ แต่ก้ไม่มี phpMyAdmin อีก ทำไงล่ะครับคราวนี้ก็ต้อง Command line ซิครับ

ทีนี้ก็ต้องหาความรู้กันครับ แล้วก็ได้มาแบบนี้ครับ

mysqldump -h HOST_NAME -u USERNAME -p DATABASE_NAME > DATABASE_NAME.sql
ตัวอย่างครับ
 mysqldump -h localhost -u root -p database > database.sql