ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์ProgrammingSQL 120000++ Record และ Traffic 7000-10000/วัน ใช้VPS (+1Thankให้ทุกท่านแล้วคับ)
หน้า: 1 [2]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: SQL 120000++ Record และ Traffic 7000-10000/วัน ใช้VPS (+1Thankให้ทุกท่านแล้วคับ)  (อ่าน 4990 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
ohmohm
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 170
ออฟไลน์ ออฟไลน์

กระทู้: 3,098



ดูรายละเอียด เว็บไซต์
« ตอบ #20 เมื่อ: 20 กรกฎาคม 2011, 14:16:35 »

หลีกเลี่ยงการ select * ด้วยครับ เอาแค่ columns ที่จำเป็น ยิ่งถ้าเป็น columns ที่อยู่ใน index ยิ่งดีครับ จะได้อานิสงส์จาก covering index
สร้าง index บน column ที่มีค่าหลากหลายหน่อยนะครับ ( มี selectivity สูง ) จะได้คุ้มค่า
ตัวอย่าง ถ้าอย่าง primary key มีค่าในแต่ละ row ไม่ซ้ำกันอยู่แล้ว มี selectivity สูงสุด แต่ primary key มันมี index มาให้อยู่แล้ว
ตัวอย่างคลาสซิก เช่น column ที่ใช้ระบุชายหญิง มันมี selectiviry ต่ำ คือมีแค่สอง ไม่ค่อยคุ้มที่จะสร้าง index ( ถึงสร้าง ตัว database server ก็อาจไม่ใช้ )
อาจต้องทำ compound index คือ index ที่มีหลาย columns

online transaction process มากกว่า 10,000 transactions/วินาที ( ใครทำ affiliate บ้าง )
http://www.linkedin.com/jobs?viewJob=&jobId=1767278

บางบริษัทต้องจ้าง dba เงินเดือน 80k มา fine june
http://www.narisa.com/forums/i...&p=150334&#entry150334
บันทึกการเข้า
WPDSign
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 500
ออฟไลน์ ออฟไลน์

กระทู้: 9,060



ดูรายละเอียด เว็บไซต์
« ตอบ #21 เมื่อ: 20 กรกฎาคม 2011, 15:11:22 »

ขอบคุณมากครับ คุณohmohm และเพื่อนๆท่านอื่นด้วยครับ

ใช้แบบนี้ได้ไมครับ อันนี้ SELECT หน้า detail
โค๊ด:
mysql_query("SELECT id_mem,type,title,message,website FROM table WHERE id='$PostID' LIMIT 1 ");
ไม่รู้ถุกเปล่าครับ
ตอนนี้ผมแก้ลองดูแบบนี้ทุก selete ดู ปกติ SELECT แบบนี้ ใช้แต่ table หลัก อย่างเดียว พอดีลืมมักง่าย อิอิ  wanwan012


post เยอะแต่ประสบการณ์ยังน้อย ผมแนว จับทำเลย เขียน code ตามหลักการง่ายๆ อันใหน error ก็แก้ไปเรื่อยๆ พื้นฐานการณ์ต่างๆยังไม่รู้เลย แต่พอใช้เป็นนิดหน่อยแบบมั่วๆ  wanwan031  wanwan012
« แก้ไขครั้งสุดท้าย: 20 กรกฎาคม 2011, 15:30:21 โดย WPDSign » บันทึกการเข้า

สร้างบ้าน Modern แบบบ้านโมเดิร์น มาแรง
» ต้องการสร้างบ้านดูแบบบ้านสวยๆ แบบบ้านสองชั้น ทุกสไลต์บริการรับสร้างบ้าน ใครฝันอย่างสร้างบ้านสไตล์รีสอร์ท มีแบบบ้านสไตล์รีสอร์ท พร้อมก่อสร้าง ลงประกาศขายบ้านที่ ลงประกาศ
mongther
ก๊วนเสียว
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 298



ดูรายละเอียด เว็บไซต์
« ตอบ #22 เมื่อ: 21 กรกฎาคม 2011, 15:55:26 »

ก่อนอื่น ... ขอแสดงความยินดีด้วยนะครับ เพราะ Traffic เข้ามากแสดงว่า รายได้ที่เข้ามาก็อาจจะเพิ่มขึ้นตาม  Cry

ตามประสบการณ์ผมตามนี้นะครับ

- ปรับแต่งในไฟล์ my.cnf จะช่วยได้มากๆเลยครับ แต่ค่าเท่าไหร่เรียนตามตรงว่า แต่ละ Database แต่ละคนจะไม่เหมือนกัน ดังนั้น เพื่อให้ง่ายผมแนะนำว่าลอง Search ไฟล์ Perl ใน internet ที่ชื่อว่า mysqltuner.pl ผมลองเช็คดูนะครับ (ผมมีแต่ไม่รู้ว่าจะส่งให้ยังไงดีครับ)ซึ่งมันจะแสดงให้หมดเลยว่าควร Set ค่าเท่าไหร่ดี

วิธีการ Run ก็ง่ายๆ คือ

#perl my.cnf

- เนื่องจากว่า RAM มันอาจจะไปค้างเวลาที่ SQL มันทำงานหนักๆ ผมใช้วิธี Restart ทุกคืนเวลาไม่ค่อยมีคนเข้า (วิธีนี้ลองพิจารณาดูเองนะครับ บางคนมองว่า Server มันจะต้อง Down ลงแต่เครื่องผมไม่ซีเรียสขนาดนั้น แลกกับ RAM เยอะๆก็คุ้มดีน่ะครับ)

- ผมทำ Cache ลงไฟล์ไปเลยถ้าหากว่าไม่มีการ Update ข้อมูลบ่อยๆ เช่นข้อมูลโฆษณา ถ้าเค้าอยากเลื่อนอันดับ หรือแก้ไขข้อมูลก็สามารถ Update ที่ไฟล์ได้เลย ... ส่วนนี้ลดจำนวน Record ลงไปได้มากโขเลยล่ะครับ

- ทำระบบป้องกันการโดยยิง หรือการเข้าจาก bot ที่มากเกินไปเช่นเช็คกว่าถ้าเข้ามา วินาทีละเกิน 10 transaction ก็ขึ้น capcha ให้กรอก (เลียนแบบ google เลยครับ)

- ส่วนวิธีอื่นก็ เพิ่ม RAM, แยกเป็น Server ต่างหากไปเลยครับ ไม่กระทบกับใครดี Dedicate ไปก่อนก็ได้ครับ ประหยัดดี

- Tune SQL จากประสบการณ์ผม Database Type MyIsam เร็วกว่า InnoDB นะครับ ถ้าเราใช้สำหรับ Transaction แต่ข้อเสียของ MyIsam คือมัน พังบ่อยมากและ overhead ยังเยอะอีก ต้องคอย optimize และ repaire บ่อยๆ ส่วนมากผมจะใช้ InnoDB ไปเลยครับ ส่วน MyISAM ผมใช้กับข้อมูล transaction ที่ไม่สำคัญมากเช่นเก็บเบอร์ IP ที่ bot ยิงเข้ามาเป็นต้น

หวังว่าคงช่วยได้บ้างนะครับ  wanwan003
บันทึกการเข้า

"สองเหรียญในกระเป๋า เสียงดังกว่าร้อยเหรียญที่ยังมองไม่เห็น"
HaHaHaHa
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 420



ดูรายละเอียด
« ตอบ #23 เมื่อ: 21 กรกฎาคม 2011, 16:09:51 »

ก่อนอื่น ... ขอแสดงความยินดีด้วยนะครับ เพราะ Traffic เข้ามากแสดงว่า รายได้ที่เข้ามาก็อาจจะเพิ่มขึ้นตาม  Cry

ตามประสบการณ์ผมตามนี้นะครับ

- ปรับแต่งในไฟล์ my.cnf จะช่วยได้มากๆเลยครับ แต่ค่าเท่าไหร่เรียนตามตรงว่า แต่ละ Database แต่ละคนจะไม่เหมือนกัน ดังนั้น เพื่อให้ง่ายผมแนะนำว่าลอง Search ไฟล์ Perl ใน internet ที่ชื่อว่า mysqltuner.pl ผมลองเช็คดูนะครับ (ผมมีแต่ไม่รู้ว่าจะส่งให้ยังไงดีครับ)ซึ่งมันจะแสดงให้หมดเลยว่าควร Set ค่าเท่าไหร่ดี

วิธีการ Run ก็ง่ายๆ คือ

#perl my.cnf

- เนื่องจากว่า RAM มันอาจจะไปค้างเวลาที่ SQL มันทำงานหนักๆ ผมใช้วิธี Restart ทุกคืนเวลาไม่ค่อยมีคนเข้า (วิธีนี้ลองพิจารณาดูเองนะครับ บางคนมองว่า Server มันจะต้อง Down ลงแต่เครื่องผมไม่ซีเรียสขนาดนั้น แลกกับ RAM เยอะๆก็คุ้มดีน่ะครับ)

- ผมทำ Cache ลงไฟล์ไปเลยถ้าหากว่าไม่มีการ Update ข้อมูลบ่อยๆ เช่นข้อมูลโฆษณา ถ้าเค้าอยากเลื่อนอันดับ หรือแก้ไขข้อมูลก็สามารถ Update ที่ไฟล์ได้เลย ... ส่วนนี้ลดจำนวน Record ลงไปได้มากโขเลยล่ะครับ

- ทำระบบป้องกันการโดยยิง หรือการเข้าจาก bot ที่มากเกินไปเช่นเช็คกว่าถ้าเข้ามา วินาทีละเกิน 10 transaction ก็ขึ้น capcha ให้กรอก (เลียนแบบ google เลยครับ)

- ส่วนวิธีอื่นก็ เพิ่ม RAM, แยกเป็น Server ต่างหากไปเลยครับ ไม่กระทบกับใครดี Dedicate ไปก่อนก็ได้ครับ ประหยัดดี

- Tune SQL จากประสบการณ์ผม Database Type MyIsam เร็วกว่า InnoDB นะครับ ถ้าเราใช้สำหรับ Transaction แต่ข้อเสียของ MyIsam คือมัน พังบ่อยมากและ overhead ยังเยอะอีก ต้องคอย optimize และ repaire บ่อยๆ ส่วนมากผมจะใช้ InnoDB ไปเลยครับ ส่วน MyISAM ผมใช้กับข้อมูล transaction ที่ไม่สำคัญมากเช่นเก็บเบอร์ IP ที่ bot ยิงเข้ามาเป็นต้น

หวังว่าคงช่วยได้บ้างนะครับ  wanwan003
mysqltuner.pl โหลดมาแล้วเอาไปไว้ตรงไหนอะครับ
บันทึกการเข้า
mongther
ก๊วนเสียว
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 298



ดูรายละเอียด เว็บไซต์
« ตอบ #24 เมื่อ: 21 กรกฎาคม 2011, 16:26:18 »

mysqltuner.pl เอาวางบน host น่ะครับ มันเป็น perl script ทางตรงไหนก็ได้แล้วลอง run ดูครับ

ปล. แต่เครื่องต้องมี complier perl นะครับ (โดยปกติ unix ตระกูล centOs, Redhat, Dabian น่าจะมีอยู่แล้วครับ)

เช็คได้ด้วยการดู

# man perl

ลอง search ดูใน google ก็ได้นะครับเห้นหลายๆ blog สอนใช้โดยละเอียด ภาษาไทยก็มีครับ  wanwan017
บันทึกการเข้า

"สองเหรียญในกระเป๋า เสียงดังกว่าร้อยเหรียญที่ยังมองไม่เห็น"
WPDSign
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 500
ออฟไลน์ ออฟไลน์

กระทู้: 9,060



ดูรายละเอียด เว็บไซต์
« ตอบ #25 เมื่อ: 21 กรกฎาคม 2011, 16:38:06 »

ก่อนอื่น ... ขอแสดงความยินดีด้วยนะครับ เพราะ Traffic เข้ามากแสดงว่า รายได้ที่เข้ามาก็อาจจะเพิ่มขึ้นตาม  Cry

ตามประสบการณ์ผมตามนี้นะครับ

- ปรับแต่งในไฟล์ my.cnf จะช่วยได้มากๆเลยครับ แต่ค่าเท่าไหร่เรียนตามตรงว่า แต่ละ Database แต่ละคนจะไม่เหมือนกัน ดังนั้น เพื่อให้ง่ายผมแนะนำว่าลอง Search ไฟล์ Perl ใน internet ที่ชื่อว่า mysqltuner.pl ผมลองเช็คดูนะครับ (ผมมีแต่ไม่รู้ว่าจะส่งให้ยังไงดีครับ)ซึ่งมันจะแสดงให้หมดเลยว่าควร Set ค่าเท่าไหร่ดี

วิธีการ Run ก็ง่ายๆ คือ

#perl my.cnf

- เนื่องจากว่า RAM มันอาจจะไปค้างเวลาที่ SQL มันทำงานหนักๆ ผมใช้วิธี Restart ทุกคืนเวลาไม่ค่อยมีคนเข้า (วิธีนี้ลองพิจารณาดูเองนะครับ บางคนมองว่า Server มันจะต้อง Down ลงแต่เครื่องผมไม่ซีเรียสขนาดนั้น แลกกับ RAM เยอะๆก็คุ้มดีน่ะครับ)

- ผมทำ Cache ลงไฟล์ไปเลยถ้าหากว่าไม่มีการ Update ข้อมูลบ่อยๆ เช่นข้อมูลโฆษณา ถ้าเค้าอยากเลื่อนอันดับ หรือแก้ไขข้อมูลก็สามารถ Update ที่ไฟล์ได้เลย ... ส่วนนี้ลดจำนวน Record ลงไปได้มากโขเลยล่ะครับ

- ทำระบบป้องกันการโดยยิง หรือการเข้าจาก bot ที่มากเกินไปเช่นเช็คกว่าถ้าเข้ามา วินาทีละเกิน 10 transaction ก็ขึ้น capcha ให้กรอก (เลียนแบบ google เลยครับ)

- ส่วนวิธีอื่นก็ เพิ่ม RAM, แยกเป็น Server ต่างหากไปเลยครับ ไม่กระทบกับใครดี Dedicate ไปก่อนก็ได้ครับ ประหยัดดี

- Tune SQL จากประสบการณ์ผม Database Type MyIsam เร็วกว่า InnoDB นะครับ ถ้าเราใช้สำหรับ Transaction แต่ข้อเสียของ MyIsam คือมัน พังบ่อยมากและ overhead ยังเยอะอีก ต้องคอย optimize และ repaire บ่อยๆ ส่วนมากผมจะใช้ InnoDB ไปเลยครับ ส่วน MyISAM ผมใช้กับข้อมูล transaction ที่ไม่สำคัญมากเช่นเก็บเบอร์ IP ที่ bot ยิงเข้ามาเป็นต้น

หวังว่าคงช่วยได้บ้างนะครับ  wanwan003

ขอบคุณพี่มากๆครับ พิมพ์ยาว อ่านเข้าใจดี เดี่ยวผมจะค่อยๆลองทำตามดูครับ เพราะบางอย่างยังไม่เคยลอง
หากไม่รบกวนเกินไป ส่งมาที่ msn,main : wpdsign @ hotmail.com

traffic เว็บพี่เยอะมาก
ขอแสดงความยินดี ด้วยเช่นกันน่ะครับ

thank ครับ
พัน
บันทึกการเข้า

สร้างบ้าน Modern แบบบ้านโมเดิร์น มาแรง
» ต้องการสร้างบ้านดูแบบบ้านสวยๆ แบบบ้านสองชั้น ทุกสไลต์บริการรับสร้างบ้าน ใครฝันอย่างสร้างบ้านสไตล์รีสอร์ท มีแบบบ้านสไตล์รีสอร์ท พร้อมก่อสร้าง ลงประกาศขายบ้านที่ ลงประกาศ
thaicoffin
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 41
ออฟไลน์ ออฟไลน์

กระทู้: 1,128



ดูรายละเอียด เว็บไซต์
« ตอบ #26 เมื่อ: 21 กรกฎาคม 2011, 16:59:52 »

เข้ามาเก็บความรู้  wanwan006 :wanwan006:สักวันหนึ่งเราจะโต
บันทึกการเข้า

HaHaHaHa
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 420



ดูรายละเอียด
« ตอบ #27 เมื่อ: 21 กรกฎาคม 2011, 17:47:17 »

mysqltuner.pl เอาวางบน host น่ะครับ มันเป็น perl script ทางตรงไหนก็ได้แล้วลอง run ดูครับ

ปล. แต่เครื่องต้องมี complier perl นะครับ (โดยปกติ unix ตระกูล centOs, Redhat, Dabian น่าจะมีอยู่แล้วครับ)

เช็คได้ด้วยการดู

# man perl

ลอง search ดูใน google ก็ได้นะครับเห้นหลายๆ blog สอนใช้โดยละเอียด ภาษาไทยก็มีครับ  wanwan017
ผมลองพิมดูแล้วขึ้น
PERL(1)                Perl Programmers Reference Guide                PERL(1)

NAME
       perl - Practical Extraction and Report Language

SYNOPSIS
       perl [ -sTtuUWX ]      [ -hv ] [ -V[:configvar] ]
            [ -cw ] [ -d[t][:debugger] ] [ -D[number/list] ]
            [ -pna ] [ -Fpattern ] [ -l[octal] ] [ -0[octal/hexadecimal] ]
            [ -Idir ] [ -m[-]module ] [ -M[-]’module...’ ] [ -f ]
            [ -C [number/list] ]      [ -P ]      [ -S ]      [ -x[dir] ]
            [ -i[extension] ]      [ -e ’command’ ] [ -- ] [ program-
       file ] [ argument ]...

       If you’re new to Perl, you should start with perlintro, which is a gen-
       eral intro for beginners and provides some background to help you navi-
       gate the rest of Perl’s extensive documentation.

       For ease of access, the Perl manual has been split up into several sec-
       tions.

       Overview

อะครับแสดงว่ามีใช่ป่าวครับ
บันทึกการเข้า
ohmohm
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 170
ออฟไลน์ ออฟไลน์

กระทู้: 3,098



ดูรายละเอียด เว็บไซต์
« ตอบ #28 เมื่อ: 21 กรกฎาคม 2011, 18:56:50 »


โค๊ด:
mysql_query("SELECT id_mem,type,title,message,website FROM table WHERE id='$PostID' LIMIT 1 ");
ไม่รู้ถุกเปล่า
แบบนี้ละครับ ถ้า column id เป็น primary key อยู่แล้วด้วยยิ่งดี ( เดาเอา จากชื่อ )
บันทึกการเข้า
mongther
ก๊วนเสียว
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 298



ดูรายละเอียด เว็บไซต์
« ตอบ #29 เมื่อ: 21 กรกฎาคม 2011, 19:17:59 »

mysqltuner.pl เอาวางบน host น่ะครับ มันเป็น perl script ทางตรงไหนก็ได้แล้วลอง run ดูครับ

ปล. แต่เครื่องต้องมี complier perl นะครับ (โดยปกติ unix ตระกูล centOs, Redhat, Dabian น่าจะมีอยู่แล้วครับ)

เช็คได้ด้วยการดู

# man perl

ลอง search ดูใน google ก็ได้นะครับเห้นหลายๆ blog สอนใช้โดยละเอียด ภาษาไทยก็มีครับ  wanwan017
ผมลองพิมดูแล้วขึ้น
PERL(1)                Perl Programmers Reference Guide                PERL(1)

NAME
       perl - Practical Extraction and Report Language

SYNOPSIS
       perl [ -sTtuUWX ]      [ -hv ] [ -V[:configvar] ]
            [ -cw ] [ -d[t][:debugger] ] [ -D[number/list] ]
            [ -pna ] [ -Fpattern ] [ -l[octal] ] [ -0[octal/hexadecimal] ]
            [ -Idir ] [ -m[-]module ] [ -M[-]’module...’ ] [ -f ]
            [ -C [number/list] ]      [ -P ]      [ -S ]      [ -x[dir] ]
            [ -i[extension] ]      [ -e ’command’ ] [ -- ] [ program-
       file ] [ argument ]...

       If you’re new to Perl, you should start with perlintro, which is a gen-
       eral intro for beginners and provides some background to help you navi-
       gate the rest of Perl’s extensive documentation.

       For ease of access, the Perl manual has been split up into several sec-
       tions.

       Overview

อะครับแสดงว่ามีใช่ป่าวครับ

ถูกต้องครับ แสดงว่ามี perl แล้ว run ได้เลยครับ
บันทึกการเข้า

"สองเหรียญในกระเป๋า เสียงดังกว่าร้อยเหรียญที่ยังมองไม่เห็น"
WPDSign
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 500
ออฟไลน์ ออฟไลน์

กระทู้: 9,060



ดูรายละเอียด เว็บไซต์
« ตอบ #30 เมื่อ: 21 กรกฎาคม 2011, 19:24:40 »


โค๊ด:
mysql_query("SELECT id_mem,type,title,message,website FROM table WHERE id='$PostID' LIMIT 1 ");
ไม่รู้ถุกเปล่า
แบบนี้ละครับ ถ้า column id เป็น primary key อยู่แล้วด้วยยิ่งดี ( เดาเอา จากชื่อ )

ขอบคุณมากครับ

ช่วงเย็นๆ ตอนนี้ ช่วงค่ำๆ ขนาดผมตัดส่วนที่ join ออกหมดแล้วยังไม่ไหว

เดี่ยวลองตามคุณmongther ด้วยอีกวิธีครับ
 
บันทึกการเข้า

สร้างบ้าน Modern แบบบ้านโมเดิร์น มาแรง
» ต้องการสร้างบ้านดูแบบบ้านสวยๆ แบบบ้านสองชั้น ทุกสไลต์บริการรับสร้างบ้าน ใครฝันอย่างสร้างบ้านสไตล์รีสอร์ท มีแบบบ้านสไตล์รีสอร์ท พร้อมก่อสร้าง ลงประกาศขายบ้านที่ ลงประกาศ
PAGE
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 104
ออฟไลน์ ออฟไลน์

กระทู้: 2,367



ดูรายละเอียด
« ตอบ #31 เมื่อ: 21 กรกฎาคม 2011, 19:30:32 »

ว่าจะเข้ามาเนียน แต่ที่คิดไว้ก็มีคนตอบหมดแล้ว

ช่วยดันให้แล้วกัน
บันทึกการเข้า

สิ่งที่ดีที่สุดในชีวิตคือความสงบ
mongther
ก๊วนเสียว
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 298



ดูรายละเอียด เว็บไซต์
« ตอบ #32 เมื่อ: 21 กรกฎาคม 2011, 19:56:44 »

ขอโทษด้วยครับ ผิดเบ้อเริ่มเลย

การ Run files เราต้อง run perl file ครับ

ไม่ใช่

#perl my.cnf

ต้องเป็นแบบนี้นะครับ

#perl mysqltuner.pl
(ไม่ต้องพิมพ์ # นะครับ )

 wanwan017
บันทึกการเข้า

"สองเหรียญในกระเป๋า เสียงดังกว่าร้อยเหรียญที่ยังมองไม่เห็น"
Infinity
คนรักเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 139



ดูรายละเอียด เว็บไซต์
« ตอบ #33 เมื่อ: 22 กรกฎาคม 2011, 09:29:07 »

ขอถามด้วยคนนะครับ complier perl ไปเปิดได้ที่ไหนครับ
พอดีผมมี vps เหมือนกัน แต่หาใน direct admin ไม่เจอ

แล้วก็การทำ index เราทำใน phpMyAdmin ได้ไหม จะเสี่ยงข้อมูลเสียหายหรือเปล่า
ผมจะทำหลายทีละ แต่จะแบ็คอัพลง sql มาก่อนมันจะมีปัญหาสองเรื่องคือ
1. ไฟล์ sql ใหญ่มากๆ ดัมพ์ลำบาก ล้านหกแสนเรคคอร์ด 350 เม็ก (ผมใช้ shell ไม่เป็น)
2. user ใช้งานเว็บตลอดเวลา ผมไม่สามารถปิดเว็บได้ครับ

บันทึกการเข้า

execter
ก๊วนเสียว
*

พลังน้ำใจ: 24
ออฟไลน์ ออฟไลน์

กระทู้: 212



ดูรายละเอียด เว็บไซต์
« ตอบ #34 เมื่อ: 22 กรกฎาคม 2011, 09:37:57 »

1.เช็คดู SQL ให้มัน กระชับมากที่สุด อย่างเช่นเราจะเอาแค่บาง Field ก็อย่าใช้ *
2.ทำ Index ใน Field ที่ใช้เป็นเงื่อนไขบ่อยเพื่อความรวดเร็วในการค้นหา
3.หลีกเลี่ยง การ JOIN ต่างๆ เพราะจะทำให้ DB ทำงานหนัก
4.คงต่อพึ่งระบบ CACHE ของ PHP แล้วล่ะ
5.Scale Out Server ขยายออกไปเป็น DB Server อีกหนึ่งตัว

คิดได้เท่านี้ครับ ลองดูครับ  wanwan011
« แก้ไขครั้งสุดท้าย: 22 กรกฎาคม 2011, 09:41:52 โดย execter » บันทึกการเข้า

Mubaza Thailand
kond
สมุนแก๊งเสียว
*

พลังน้ำใจ: 31
ออฟไลน์ ออฟไลน์

กระทู้: 851



ดูรายละเอียด
« ตอบ #35 เมื่อ: 22 กรกฎาคม 2011, 10:04:19 »

กระทู้นี้ได้ความรู้ดีจริงครับ ขอเข้ามาเก็บความรู้เผื่อวันนึงอาจจะมีโอกาสเจอปัญหาแบบนี้บ้าง Tongue
บันทึกการเข้า

mongther
ก๊วนเสียว
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 298



ดูรายละเอียด เว็บไซต์
« ตอบ #36 เมื่อ: 22 กรกฎาคม 2011, 10:31:51 »

ขอถามด้วยคนนะครับ complier perl ไปเปิดได้ที่ไหนครับ
พอดีผมมี vps เหมือนกัน แต่หาใน direct admin ไม่เจอ

แล้วก็การทำ index เราทำใน phpMyAdmin ได้ไหม จะเสี่ยงข้อมูลเสียหายหรือเปล่า
ผมจะทำหลายทีละ แต่จะแบ็คอัพลง sql มาก่อนมันจะมีปัญหาสองเรื่องคือ
1. ไฟล์ sql ใหญ่มากๆ ดัมพ์ลำบาก ล้านหกแสนเรคคอร์ด 350 เม็ก (ผมใช้ shell ไม่เป็น)
2. user ใช้งานเว็บตลอดเวลา ผมไม่สามารถปิดเว็บได้ครับ



ผมไม่เคยเช็คผ่าน direct admin นะครับ เคยแค่เช้คผ่าน command line ด้วยคำสั่ง

man perl

ถ้าเครื่องไม่มีก็สามารถติดตั้งโดยใช้คำสั่ง

yum install perl
(สำหรับ unix ตระกูล centOS)

หรือ

atp get perl
(สำหรับ unix ตระกูล dibian)

ง่ายๆไม่ถึง 3 นาทีก็เสร็จครับ
ปล. ใครไม่ต้องการใช้ script perl ตรวจสอบ ให้เลือกใช้ phpMyAdmin ดูก็มีครับ Click ตรง Server Status จะแสดง ข้อมูลทั้งหมดเลย

ตอบคำถามที่ว่าการใส่ index ผ่าน phpMyAdmin ทำได้ครับ ไม่ส่งผลกระทบ แต่ถ้าจะให้ดูควร Backup เอาไว้ก่อนครับ
ผมไม่แนะนำให้ backup ผ่าน phpMyAdmin นะครับ ถ้าจะทำให้ทำผ่าน command line บน unix จะเร็วกว่าเยอะครับ

Back up ใช้
mysqldump -u root -p -h 127.0.0.1 my_database > my_database.sql

Restore ใช้
mysql -u root -p -h 127.0.0.1 my_database < my_database.sql

ปล. user คือ root, ip คือ 127.0.0.1, ฐานข้อมูลชื่อ my_database, ลงไฟล์ชื่อ my_database.sql

350 MB นี่สำหรับผมถือว่าไม่ใหญ่เลยครับ ขอผม 1 GB ใช้เวลา Backup ไม่เกิน 10 นาทีครับ
บันทึกการเข้า

"สองเหรียญในกระเป๋า เสียงดังกว่าร้อยเหรียญที่ยังมองไม่เห็น"
WPDSign
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 500
ออฟไลน์ ออฟไลน์

กระทู้: 9,060



ดูรายละเอียด เว็บไซต์
« ตอบ #37 เมื่อ: 22 กรกฎาคม 2011, 10:38:41 »

หลังๆคุณmongther ปล่อยเยอะเลย ขอบคุณสำหรับความรู้ดีๆ จากประสบการณ์ตรง
กด thank ยังไม่ได้
บันทึกการเข้า

สร้างบ้าน Modern แบบบ้านโมเดิร์น มาแรง
» ต้องการสร้างบ้านดูแบบบ้านสวยๆ แบบบ้านสองชั้น ทุกสไลต์บริการรับสร้างบ้าน ใครฝันอย่างสร้างบ้านสไตล์รีสอร์ท มีแบบบ้านสไตล์รีสอร์ท พร้อมก่อสร้าง ลงประกาศขายบ้านที่ ลงประกาศ
@@@
Administrator
สมุนแก๊งเสียว
*

พลังน้ำใจ: 33
ออฟไลน์ ออฟไลน์

กระทู้: 634



ดูรายละเอียด เว็บไซต์
« ตอบ #38 เมื่อ: 22 กรกฎาคม 2011, 11:05:04 »

จากประสบการนะคับ
1.ใช้ InnoDB คับ ถึงแม้จะช้ากว่า MYISAM  แค่ความเร็วคงที เพราะมีการ lock record ใน ระดับ row ซึ่ง MYISAM  จะ  lock record ใน ระดับ table
2.เช็คดู SQL เอาแค่บาง Field ก็อย่าใช้ *
3.ทำ Index ใน Field ที่ใช้เป็นเงื่อนไขบ่อย โดยทำจาก คำสั่งที่ทำให้ server อืด (ดู sql ที่ทำให้ server เราอืด tail -f /var/log/mysql/mysql-slow.log)
4.เลี่ยง การ Join พร้ำเพื่ออันไหนคิดว่าไม่ต้อง Join ก็เอาค่านั้นมาเก็บไว้ก่อนแล้วแทนค่าเอา
5.MEMCACHE ตัวนี้ลดโหลดได้เยอะ ใช้ตอนแสดงขอมูลห้านาทีสิบนาทีดึงข้อมูลจาก DB ที่หนึ่งก็ว่าไป
บันทึกการเข้า

รับซื้อเว็บ 100uip ต่อวันขึ้นไป EA Forex
Infinity
คนรักเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 139



ดูรายละเอียด เว็บไซต์
« ตอบ #39 เมื่อ: 22 กรกฎาคม 2011, 14:11:41 »

โอ้วววว ถามนิดเดียวตอบซะเยอะเลย ขอบคุณมากครับ  wanwan017
บันทึกการเข้า

หน้า: 1 [2]   ขึ้นบน
พิมพ์