BMS-HOSxP Community

HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: the205 ที่ กุมภาพันธ์ 19, 2008, 14:19:28 PM

หัวข้อ: InnoDB Warning
เริ่มหัวข้อโดย: the205 ที่ กุมภาพันธ์ 19, 2008, 14:19:28 PM
ปัญหารายวันครับ อาจารย์

ขณะนี้ผมใช้ server ตัวใหม่แล้วครับ
แต่เวลา ลูกข่าย login เข้าจะ ฟ้อง InnoDB warning ครับ โดยระบบแจ้งว่าหากไม่ เพิ่ม innodb_file_per_table
จะทำให้ระบบ ช้าเวลาให้บริการลูกข่ายมากๆครับ
ผมเพิ่ม    innodb_file_per_table  ทำตาม Help แล้ว
restart mysql แล้ว และลอง   login ใหม่ มันก็ยังเตือนเหมือนเดิมครับ

แฮ่ๆๆ ตามเดิมครับ ช่วยหน่อยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: doramon ที่ กุมภาพันธ์ 19, 2008, 16:39:57 PM
ช่วยส่ง  my.cnf  มาให้ดูด้วยครับ

แล้วบอกด้วยว่า ram เท่าไรครับ
 ;D
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: Apiruk_Jbhos ที่ เมษายน 19, 2008, 00:46:41 AM
ขอความช่วยเหลือหน่อยครับ ของผมลง Server ใหม่ เป็น CentOS 5 แล้วเจอแบบนี้เหมือนกัน แต่ My.cnf หาไม่เจอครับ ตอนลงครั้งแรกก้ Run MySql 5.1.23 ได้เลย โดยที่ไม่ต้อง Comment บรรทัดอะไรเลย Run ได้เลย
ก็ยังงงอยู่ แล้วไปหา my.cnf ที่ /etc/my.cnf ก็ไม่มี เลย ลอง copy มาใส่ ก็รู้สึกว่ามันไม่ได้เรียกจากตัวนี้ แล้วมันไปเก็บที่ไหน จะแก้ไขได้ไงครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: doramon ที่ เมษายน 19, 2008, 01:08:45 AM
whereis  my.cnf
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: Apiruk_Jbhos ที่ เมษายน 19, 2008, 01:12:17 AM
ลองแล้วครับ ไม่เจอครับ
แต่ ใช้ Hosxp ได้ปกติครับ ที่มีก็ที่มันขึ้นมาแจ้ง ภาพข้างบนแค่นั้นครับ
ผมเลยไปหาใน Google ก็เจอแบบนี้เลยลองทำดู แต่ก็ยังไม่หายครับ
ปรกติแล้ว MySQL ไม่มีไฟล์ my.cnf นี้ให้โดยตรงครับ แต่จะเป็นไฟล์ my-medium.cnf แทน และเราต้องเลือกใช้ให้ถูกต้องกับสเป็คเครื่อง โดยเฉพาะหน่วยความจำ ดังนี้ครับ

1. /usr/local/share/mysql/my-innodb-heavy-4G.cnf
สำหรับเครื่องที่มีหน่วยความจำ 4 GB , จะใช้ innodb อย่างเดียว

2. /usr/local/share/mysql/my-huge.cnf
สำหรับเครื่องที่มีหน่วยความจำ 1-2 GB

3. /usr/local/share/mysql/my-large.cnf
สำหรับเครื่องที่มีหน่วยความจำ 512 MB

4. /usr/local/share/mysql/my-medium.cnf
สำหรับเครื่องที่มีหน่วยความจำ 32-64 MB , หรือ 128 MB กรณีที่มี Web Server ด้วย

5. /usr/local/share/mysql/my-small.cnf
สำหรับเครื่องที่มี หน่วยความจำ น้อยกว่า 64 MB รัน mysql อย่างเดียว
สมมุติน่ะครับ ... สมมุติ เครื่องมีหน่วยความจำ 512 MB เราต้องใช้ไฟล์ /usr/local/share/mysql/my-large.cnf
ด้วยการก็อบปี้ และเปลี่ยนชื่อไฟล์ดังนี้
#cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf
# chown root:sys /etc/my.cnf
# chmod 644 /etc/my.cnf
# rehash

เท่านี้ คุณก็เข้าไปเซตอัพไฟล์ my.cnf ได้แล้วครับ
โชคดีครับ
อ.บัณฑิต

คิดว่าน่าจะเป็นกับ CentOS 5 เพราะ Fedora ใช้ได้ปกติ หรือว่า CentOS 5 มันไปเรียกมาจากที่อื่น
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: Apiruk_Jbhos ที่ เมษายน 19, 2008, 02:46:15 AM
ตอนนี้ไม่ขึ้นแล้วครับ ไปลบ file ที่ขึ้นต้นด้วย ib* ออก จากห้อง /var/lib/mysql
 ;D
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: doramon ที่ เมษายน 20, 2008, 14:35:27 PM
ตอนนี้ไม่ขึ้นแล้วครับ ไปลบ file ที่ขึ้นต้นด้วย ib* ออก จากห้อง /var/lib/mysql
 ;D

ถ้ามีการ  update  ตารางเป็น  innodb  ไปแล้ว ห้าม ทำการลบ ib*  ออก นะครับ


หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 23, 2008, 09:15:47 AM
ขอผมก็เป็นเหมือนกันครับ ใช้ CentOS 5.1 mysql MySQL5.1.29  ram 4GB แล้ว hosxp version 3.51.12.14 ครับแนะนำผมหน่อยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: chaom ที่ ธันวาคม 23, 2008, 10:11:47 AM
อ้างถึง
ข้อความโดย: sulaiman_hosxp 
ใส่การอ้างถึงคำพูด
ขอผมก็เป็นเหมือนกันครับ ใช้ CentOS 5.1 mysql MySQL5.1.29  ram 4GB แล้ว hosxp version 3.51.12.14 ครับแนะนำผมหน่อยครับ

หา my.cnf เจอไหมครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 23, 2008, 11:40:42 AM
my.cnf มีครับ ช่วยดูให้ผมหน่อยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: chaom ที่ ธันวาคม 23, 2008, 13:02:29 PM
up ตารางเป็น  innodb  ยังครับ

ยังไงก็สำรองข้อมูลไว้ก่อน

ถ้ายังไม่ได้ up ตารางเป็น innodb  เข้าไปลบ file ที่ขึ้นต้นด้วย ib* ออก จากห้อง /var/lib/mysql

ก็น่าจะหายครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ ธันวาคม 23, 2008, 13:14:04 PM
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=7771
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 23, 2008, 15:13:37 PM
เวลา up ตารางเป็น innodb ยังงั้ยครับ ผมลบ  ib* ใน /var/lib/mysql/  แล้วครับก็ยังเป็นครับ

หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: chaom ที่ ธันวาคม 23, 2008, 15:30:13 PM
เมนู tool ==> Miscellaneous ==> checkDB

คลิกแท็บ Advance
คลิกเมนูด้านซ้าย ==> Update Structure
ติ๊กหน้า Upgrade to InnoDB
คลิก High Performance ==>นั่งรอ..จนเสร็จ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ ธันวาคม 23, 2008, 16:32:05 PM
เมนู tool ==> Miscellaneous ==> checkDB

คลิกแท็บ Advance
คลิกเมนูด้านซ้าย ==> Update Structure
ติ๊กหน้า Upgrade to InnoDB
คลิก High Performance ==>นั่งรอ..จนเสร็จ

ยืนยันครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 24, 2008, 08:25:32 AM
ผมลองแล้วครับก็ยังเป็นครับ ไม่ทราบต้องไปแก้ตรงนั้ยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: Knott ที่ ธันวาคม 24, 2008, 08:47:00 AM
ต้องดูใน log error ของ mysql ครับ มันจะบอกว่าทำไมถึงใช้ InnoDB ไม่ได้ ถ้าหาไม่เจอจะอยู่ในห้อง data ของ mysql ครับ ไฟล์ชื่อ *ชื่อโฮส*.err ครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 24, 2008, 10:07:34 AM
ชื่อ hosxp.err ครับแล้วแก้แบบนั้ยครับ แนะนำหน่อยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: เข้ม ที่ ธันวาคม 24, 2008, 10:26:46 AM
ชื่อ hosxp.err ครับแล้วแก้แบบนั้ยครับ แนะนำหน่อยครับ

คงต้อง copy ข้อความใน hosxp.err บรรทัด ท้าย ๆ ที่มี error เกิดขึ้น
หรือไม่ก็ต้องแนบไฟล์ hosxp.err มาให้ดูด้วยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 24, 2008, 11:15:03 AM
ผมแนบไฟล์มาให้ครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 24, 2008, 11:16:48 AM
มีไฟล์แนบครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: เข้ม ที่ ธันวาคม 24, 2008, 11:45:47 AM
น่าจะเป็น ที่ my.cnf ครับ รบกวนส่งให้อีกหน่อยครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 24, 2008, 11:48:32 AM
นี้ครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: เข้ม ที่ ธันวาคม 24, 2008, 12:02:50 PM
ลองทำตามนี้ครับ

# service mysql stop

แก้ไข my.cnf   ตามนี้ดูครับ

[mysqld]
innodb_file_per_table   บรรทัดนี้ เอาออกก่อนครับ ใช้ด้านล่างอันเดียวก็พอแล้ว เนื่องจากซ้ำกัน เอาอันนี้ออก

key_buffer = 512M
myisam_sort_buffer_size = 128M
query_cache_size= 512M
# skip-name-resolve  ถ้าเน็ตเวิร์กมี DNS Server ก็ไม่ต้อง uncomments บรรทัดนี้ก็ได้ครับ
innodb_buffer_pool_size = 2G    ทดลองใช้ แค่ 2 GB ก่อนครับ

ถ้าได้แล้ว capture หน้าจอที่ได้จากการใช้คำสั่ง top  > Shift + M ให้หน่อยครับ


ปล. ถ้าเป็นไปได้ ผมทำแบบนี้เลย


[mysqld]

port      = 3306
socket      = /var/lib/mysql/mysql.sock

default-storage-engine = INNODB
default_table_type = INNODB





หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: sulaiman_hosxp ที่ ธันวาคม 24, 2008, 13:46:29 PM
ได้แล้วครับ ขอบคุณมาก จริงๆ ผมใช้ ram 4G ครับ เป็นเพราะผมใช้ CentOS 32bit หรือเปล่าครับ ช่วยอธิบายผมด้วยครับ  ขอบคุณล่วงหน้าอีกครั้งครับ
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: เข้ม ที่ ธันวาคม 24, 2008, 13:56:56 PM
ได้แล้วครับ ขอบคุณมาก จริงๆ ผมใช้ ram 4G ครับ เป็นเพราะผมใช้ CentOS 32bit หรือเปล่าครับ ช่วยอธิบายผมด้วยครับ  ขอบคุณล่วงหน้าอีกครั้งครับ

OS 32 bit เรียกใช้ความจำได้มากสุด 4 GB ครับ  ถึงแม้จะใส่ RAM 6-8 GB ก็ไม่มีประโยชน์ครับ
ถ้า Hardware สนับสนุน น่าจะทำเป็น 64 bit เลยนะครับ 
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: BMS MA Team ที่ ธันวาคม 24, 2008, 14:18:31 PM
ได้แล้วครับ ขอบคุณมาก จริงๆ ผมใช้ ram 4G ครับ เป็นเพราะผมใช้ CentOS 32bit หรือเปล่าครับ ช่วยอธิบายผมด้วยครับ  ขอบคุณล่วงหน้าอีกครั้งครับ

เหอๆๆ ขอเปลี่ยนจากคำขอบคุณเป็นการกดปุ่ม Thanks แทนได้ใหมคะ อิอิ  :D
หัวข้อ: Re: InnoDB Warning
เริ่มหัวข้อโดย: thannawe ที่ ธันวาคม 24, 2008, 14:32:40 PM
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=8180.0


 ;D :D ;D :D