BMS-HOSxP Community

HOSxP => MySQL => ข้อความที่เริ่มโดย: SoRnKuNg ที่ มกราคม 27, 2009, 23:38:59 PM

หัวข้อ: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ มกราคม 27, 2009, 23:38:59 PM
อยากถามท่านผู้รู้ทั้งหลายครับว่า option    innodb_file_per_table ของ linux
ต้องลบบรรทัดนี้ออกใช่หรือเปล่าครับ
innodb_file_per_table


เพื่อไม่ให้แสดง Error อันนี้
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: doramon ที่ มกราคม 27, 2009, 23:42:13 PM
my.cnf  ต้องไปเพิ่ม

innodb_file_per_table

หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ มกราคม 27, 2009, 23:43:32 PM
ขอบคุณครับ อ.อ๊อด
แต่เพิ่มไปแล้ว ก็ยังขึ้นอยู่เหมือนเดิมครับ ต้องแก้ไขอย่างไรครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: doramon ที่ มกราคม 27, 2009, 23:45:48 PM
เพิ่มตรงไหนครับ
แล้วปิดเปิด mysql ใหม่หรือยังครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ มกราคม 28, 2009, 00:08:15 AM
เปิดปิดแล้วครับ
เดี๋ยวกลางวันผมเอา my.cnf มาให้ดูนะครับ
วันนี้ขอนอนก่อนหลับในแล้ว
ขอบคุณ อ.อ๊อดมากครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 28, 2009, 00:25:34 AM
หากเราสร้าง my.cnf ที่มี innodb_file_per_table ทีหลัง เราต้องลบ ibdata1 ออกก่อนครับครับ (หรือ ibd*) แล้ว stop/start MySQL อีกครับ จะไม่ปรากฏคำเตือนนี้อีกครับ
***แต่ให้ระวัง หากมีข้อมูลแล้ว**** เผลอลบ ibd* ล่ะก็เสร็จครับ ข้อมูลอาจจะหายไปบ้าง แต่ถ้าทำตั้งแต่แรกเลยก่อนจะมีข้อมูลก็ไม่เป็นไรครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: hk11227 ที่ มกราคม 28, 2009, 08:45:25 AM
หากเราสร้าง my.cnf ที่มี innodb_file_per_table ทีหลัง เราต้องลบ ibdata1 ออกก่อนครับครับ (หรือ ibd*) แล้ว stop/start MySQL อีกครับ จะไม่ปรากฏคำเตือนนี้อีกครับ
***แต่ให้ระวัง หากมีข้อมูลแล้ว**** เผลอลบ ibd* ล่ะก็เสร็จครับ ข้อมูลอาจจะหายไปบ้าง แต่ถ้าทำตั้งแต่แรกเลยก่อนจะมีข้อมูลก็ไม่เป็นไรครับ


เคยให้ อ.บอยทำให้แล้วที่นครนายก แต่เป็นเครื่องโนตบุค ที่ใช้วินโดว์ แต่ก็ไม่หายผลสุดท้าย เข้าโปรแกรมไม่ได้เลย.............ลง SYSTEM ใหม่เลย............หึ หึ  เลยปล่อยเอาไว้ ไม่แก้ไขเลย
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ มกราคม 28, 2009, 08:54:00 AM
เคยให้ อ.บอยทำให้แล้วที่นครนายก แต่เป็นเครื่องโนตบุค ที่ใช้วินโดว์ แต่ก็ไม่หายผลสุดท้าย เข้าโปรแกรมไม่ได้เลย.............ลง SYSTEM ใหม่เลย............หึ หึ  เลยปล่อยเอาไว้ ไม่แก้ไขเลย
;D ;D ;Dผมทำให้ในกรณีด่วนเลยไม่ได้ทดสอบ และผมไม่ได้ลงเองแต่แรกเลยเป็นเช่นนั้น ;D ;D ;D
ถ้าผมเซ็ตแต่แรกคงไม่เป็น ฮิฮิ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ มกราคม 28, 2009, 08:59:47 AM
อยากถามท่านผู้รู้ทั้งหลายครับว่า option    innodb_file_per_table ของ linux
ต้องลบบรรทัดนี้ออกใช่หรือเปล่าครับ
innodb_file_per_table


เพื่อไม่ให้แสดง Error อันนี้


ลองลง server ใหม่เฉพาะ mysql ดีกว่าแล้วน่าจะหาย
ถ้า ลบ ib* แล้วมีข้อมูล ต้องระวัง

1.back up ข้อมูล
2.ใช้คำสั่งประมาณนี้
copy my.cnf กับ rc.local ก่อน

service mysql stop
export TMP=/tmp
export TMPDIR=/tmp
rm -fr /var/lib/mysql
rm -f /etc/init.d/mysql*
chmod 744 /etc/my.cnf
chmod 744 /etc/rc.d/rc.local
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
mysql -e "drop database if exists hos"
mysql -e "create database hos"
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ มกราคม 28, 2009, 20:20:25 PM
อันนี้ config ที่ผมใช้อยู่ครับ เอามาจาก อ.บอย ที่โพสไว้ให้ในบอร์ด

มันก็ยังขึ้น   Error innodb_file_per_table

ไม่รู้ว่าผิดตรงไหนอะครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: Knott ที่ มกราคม 29, 2009, 08:21:37 AM
ต้องกลับไปดู log file ของ mysql ด้วยครับ ว่าทำไม innodb ถึงไม่ทำงาน จะมีแจ้งครับว่า ต้องแก้ยังไง แก้ไขและตรวจสอบว่า ฟังก์ชั่น innodb ทำงานแล้ว คำเตือนให้เพิ่ม innodb_file_per_table ก็จะหายไปครับ บางครั้งปรับ  my.cnf ไม่ตรงจุดก็จะไม่หายครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: เข้ม ที่ มกราคม 29, 2009, 11:30:53 AM
ต้องกลับไปดู log file ของ mysql ด้วยครับ ว่าทำไม innodb ถึงไม่ทำงาน จะมีแจ้งครับว่า ต้องแก้ยังไง แก้ไขและตรวจสอบว่า ฟังก์ชั่น innodb ทำงานแล้ว คำเตือนให้เพิ่ม innodb_file_per_table ก็จะหายไปครับ บางครั้งปรับ  my.cnf ไม่ตรงจุดก็จะไม่หายครับ

ตามนั้นเลยครับ

นำ  file
/var/lib/mysql/host-name.err
มาให้ดูหน่อยครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: chinaga ที่ มกราคม 29, 2009, 12:49:32 PM
ลองดูวิธีแก้ตามนีดูครับ
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4821.0
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ มกราคม 29, 2009, 23:58:02 PM
ต้องกลับไปดู log file ของ mysql ด้วยครับ ว่าทำไม innodb ถึงไม่ทำงาน จะมีแจ้งครับว่า ต้องแก้ยังไง แก้ไขและตรวจสอบว่า ฟังก์ชั่น innodb ทำงานแล้ว คำเตือนให้เพิ่ม innodb_file_per_table ก็จะหายไปครับ บางครั้งปรับ  my.cnf ไม่ตรงจุดก็จะไม่หายครับ

ตามนั้นเลยครับ

นำ  file
/var/lib/mysql/host-name.err
มาให้ดูหน่อยครับ

ขอบคุณครับ ทุกท่าน

พรุ่งนี้ (วันศุกร์) จะเอา /var/lib/mysql/host-name.err  มาให้ดูนะครับ

หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ มกราคม 30, 2009, 17:33:44 PM
ต้องกลับไปดู log file ของ mysql ด้วยครับ ว่าทำไม innodb ถึงไม่ทำงาน จะมีแจ้งครับว่า ต้องแก้ยังไง แก้ไขและตรวจสอบว่า ฟังก์ชั่น innodb ทำงานแล้ว คำเตือนให้เพิ่ม innodb_file_per_table ก็จะหายไปครับ บางครั้งปรับ  my.cnf ไม่ตรงจุดก็จะไม่หายครับ

backupข้อมูลก่อน
แล้วลองทำตามนี้

ลองเปลี่ยนค่า

innodb_log_file_size = 5242880

(ไม่ต้องมีหน่วย) แล้ว restart mysql ใหม่ครับ

ถ้าไม่ได้ ส่ง Log file เข้ามาอีกครั้งครับ

แล้วน่าจะหาย
ผมทำมาหายที่แล้ว
น่าจะลืมทำอะไร
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ กุมภาพันธ์ 01, 2009, 09:41:17 AM
สงสัยตอนลงผมไม่ได้ CHMOD ไฟล์แน่เลย
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: kwh ที่ กุมภาพันธ์ 01, 2009, 11:24:37 AM
จากการทดลองทำใน PC หลายรอบ ให้ปรับตั้งแต่ ทำตารางปล่าวเสร็วแล้วครับ  เวลาที่ใช้ปรับก็ไม่นานด้วยครับ ( ก็ตารางปล่าวนิ ) แล้วค่อยนำข้อมูลเข้า จะไม่มีปัญหาการถามดังที่ถามกันครับ

หรือเป็นที่ Full vertion หว่า ผมยังใช้ 3.51.3.4 อยู่เลยรู้สึกปัญหาจะน้อยกว่าหลังๆ แบบว่าตามไม่ทัน  ;D
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ กุมภาพันธ์ 01, 2009, 16:25:02 PM
ผมว่าน่าจะเป็นที่ผม ทำมั่วมากกว่า
รู้ไม่จริง ทำไปเรื่อยอะครับ ช่วงกำลังทดลองก็ทำๆไปก่อน
เอาจริงแล้วค่อยว่ากัน อิอิ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ กุมภาพันธ์ 03, 2009, 13:18:27 PM
มาแล้วครับ HOSXP.ERR

ช่วยดูให้หน่อยนะครับ ขอบคุณครับ


ต้องกลับไปดู log file ของ mysql ด้วยครับ ว่าทำไม innodb ถึงไม่ทำงาน จะมีแจ้งครับว่า ต้องแก้ยังไง แก้ไขและตรวจสอบว่า ฟังก์ชั่น innodb ทำงานแล้ว คำเตือนให้เพิ่ม innodb_file_per_table ก็จะหายไปครับ บางครั้งปรับ  my.cnf ไม่ตรงจุดก็จะไม่หายครับ

ตามนั้นเลยครับ

นำ  file
/var/lib/mysql/host-name.err
มาให้ดูหน่อยครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: udomchok ที่ กุมภาพันธ์ 03, 2009, 21:08:41 PM
จาก hosxp.err และ my.cnf ที่ให้มา
==================================
[client]
port      = 3306
socket      = /var/lib/mysql/mysql.sock
default-character-set=tis620

[mysqld]
port      = 3306
socket      = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 6G
max_allowed_packet = 1G
table_cache = 1500
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 1M
myisam_sort_buffer_size = 2G
thread_cache_size = 1000
query_cache_size= 2G
thread_concurrency = 16
default-character-set=tis620
skip-name-resolve
skip-character-set-client-handshake
init_connect = 'SET NAMES tis620'
innodb_file_per_table
innodb_data_home_dir = /var/lib/mysql/
innodb_data_file_path = ibdata1:100M:autoextend
innodb_log_group_home_dir = /var/lib/mysql/
#############################   mysql 5.1.X
#innodb_log_arch_dir = /var/lib/mysql/
#############################
innodb_buffer_pool_size = 13G
innodb_additional_mem_pool_size = 64M
innodb_log_file_size = 1G
innodb_log_buffer_size = 32M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
innodb_thread_concurrency = 0

[mysqldump]
quick
max_allowed_packet = 128M
allow-keywords

[mysql]
no-auto-rehash
default-character-set=tis620

[isamchk]
key_buffer = 1G
sort_buffer_size = 1G
read_buffer = 8M
write_buffer = 8M

[myisamchk]
key_buffer = 2G
sort_buffer_size = 1G
read_buffer = 8M
write_buffer = 8M

[mysqlhotcopy]
interactive-timeout
==================================
ผมขอเดานิดหนึ่งว่าตรงที่ผมทำ hi-light ไว้ มีการปลับเปลี่ยนตัวเลขหลายครั้ง แต่ยังใช้ไม่ได้สักครั้ง
ลองเปลี่ยนจาก 1G เป็น 5242880 ไม่ต้องใส่หน่วยนะครับ เสร็จแล้ว restart mysql service ซะ

ไม่รู้ใช้ได้ไหม มือใหม่หัดเดาครับ.... :)
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: udomchok ที่ กุมภาพันธ์ 03, 2009, 21:30:39 PM
090124 00:40:39 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
InnoDB: The first specified data file ./ibdata1 did not exist:
InnoDB: a new database to be created!
090124  0:40:39  InnoDB: Setting file ./ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
090124  0:40:39  InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
090124  0:40:39  InnoDB: Log file ./ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
090124  0:40:39  InnoDB: Started; log sequence number 0 0
090124  0:40:39 [Note] Event Scheduler: Loaded 0 events
090124  0:40:39 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.30'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  MySQL Community Server (GPL)
090124  1:06:31 [Note] /usr/sbin/mysqld: Normal shutdown

090124  1:06:31 [Note] Event Scheduler: Purging the queue. 0 events
090124  1:06:31  InnoDB: Starting shutdown...
090124  1:06:32  InnoDB: Shutdown completed; log sequence number 0 46409
090124  1:06:32 [Note] /usr/sbin/mysqld: Shutdown complete

090124 01:06:32 mysqld_safe mysqld from pid file /var/lib/mysql/HOSXP.pid ended
090124 01:08:20 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
InnoDB: Error: log file /var/lib/mysql/ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 268435456 bytes!
090124  1:08:22 [ERROR] Plugin 'InnoDB' init function returned error.
090124  1:08:22 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
090124  1:08:22 [ERROR] /usr/sbin/mysqld: unknown variable 'innodb_log_arch_dir=/var/lib/mysql/'
090124  1:08:22 [ERROR] Aborting

090124  1:08:22 [Note] /usr/sbin/mysqld: Shutdown complete
===========================================
ตอนที่ติดตั้ง MySQL ทีแรก
090124  0:40:39  InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
สามารถ start mysql ได้ตามปกติ ระบบแจ้งว่าไม่พบ log file จึงสร้างขึ้นมาใหม่ด้วยขนาด 5 MB แต่หลังจากนั้น
090124 01:08:20 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
InnoDB: Error: log file /var/lib/mysql/ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 268435456 bytes!
log file ถูกเปลี่ยนขนาดเป็น 256MB ระบบจึงเริ่มมีปัญหา ...และถูกเปลี่ยนขนาดมาเรื่อย ๆ จนสุดท้ายตั้งเป็น 1GB
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ กุมภาพันธ์ 03, 2009, 23:42:03 PM
ตกลงแล้วให้ผมลองเปลี่ยน innodb_log_file_size = 1G
เป็น 5242880  ใช่หรือเปล่าครับ

ที่มันเปลี่ยนแบบนี้เพราะลองเอา my.cnf อีกอันมาลอง พอลองที ก็ลบ ib0 ออก แล้ว create database ใหม่
แล้ว dump ข้อมูลเข้าไป

ขอบคุณครับ พรุ่งนี้คงจะต้องไปลอง
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ กุมภาพันธ์ 04, 2009, 06:07:54 AM
ตกลงแล้วให้ผมลองเปลี่ยน innodb_log_file_size = 1G
เป็น 5242880  ใช่หรือเปล่าครับ

ที่มันเปลี่ยนแบบนี้เพราะลองเอา my.cnf อีกอันมาลอง พอลองที ก็ลบ ib0 ออก แล้ว create database ใหม่
แล้ว dump ข้อมูลเข้าไป

ขอบคุณครับ พรุ่งนี้คงจะต้องไปลอง

แนะนำให้ลองทำตามแบบที่พี่โก้แนะนำครับ

แล้วถ้าไม่ได้ลง cent os+mysql ใหม่เลยครับ
เพราะคุณไปลบ ib เพราะ ib ห้ามลบถ้าใช้เป็น innodb
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ กุมภาพันธ์ 04, 2009, 09:05:10 AM
ก็ที่ลบข้อมูล ib0 ออก ก็ทำตามที่ อ.บอยบอกแหละครับ
ไม่รู้ทำผิดขั้นตอนตรงไหนเปล่า


อยากถามท่านผู้รู้ทั้งหลายครับว่า option    innodb_file_per_table ของ linux
ต้องลบบรรทัดนี้ออกใช่หรือเปล่าครับ
innodb_file_per_table


เพื่อไม่ให้แสดง Error อันนี้


ลองลง server ใหม่เฉพาะ mysql ดีกว่าแล้วน่าจะหาย
ถ้า ลบ ib* แล้วมีข้อมูล ต้องระวัง

1.back up ข้อมูล
2.ใช้คำสั่งประมาณนี้
copy my.cnf กับ rc.local ก่อน

service mysql stop
export TMP=/tmp
export TMPDIR=/tmp
rm -fr /var/lib/mysql
rm -f /etc/init.d/mysql*
chmod 744 /etc/my.cnf
chmod 744 /etc/rc.d/rc.local
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
mysql -e "drop database if exists hos"
mysql -e "create database hos"
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"

หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ กุมภาพันธ์ 04, 2009, 20:00:13 PM
ก็ที่ลบข้อมูล ib0 ออก ก็ทำตามที่ อ.บอยบอกแหละครับ
ไม่รู้ทำผิดขั้นตอนตรงไหนเปล่า
ทำผิดขั้นตอน

ต้อง back up ฃ้อมูลก่อนทำ
แล้วทำตามขั้นตอนที่ให้

ลองลง server ใหม่เฉพาะ mysql ดีกว่าแล้วน่าจะหาย
ถ้า ลบ ib* แล้วมีข้อมูล ต้องระวัง
1.back up ข้อมูล
2.ใช้คำสั่งประมาณนี้
copy my.cnf กับ rc.local ก่อน
service mysql stop
export TMP=/tmp
export TMPDIR=/tmp
rm -fr /var/lib/mysql
rm -f /etc/init.d/mysql*
chmod 744 /etc/my.cnf
chmod 744 /etc/rc.d/rc.local
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
mysql -e "drop database if exists hos"
mysql -e "create database hos"
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"


เสร็จแล้ว จึง Restore ข้อมูล

หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: SoRnKuNg ที่ กุมภาพันธ์ 09, 2009, 22:50:38 PM
สรุป วิธีแก้  Error innodb_file_per_table  และ function get_serialnumber ทำวิธี อ.บอย หายครับ
     ในส่วนของ function get_serialnumber ถ้าไม่เปิดใช้งาน function นี้ ขอบอกว่าเปิดฟอร์มช้ามากๆครับ พอเปิดใช้งานแล้วความเร็วแตกต่างกันฟ้ากับดินเลย ใครที่ยังเป็นปัญหา function นี้แนะนำให้แก้โดยด่วนแต่ถ้าไม่ backup หายพร้อมข้อมูล

ขอขอบคุณ อ.บอยครับที่โพสบอกไว้

สรุปวิธีทำนะครับ ลงใหม่เฉพาะ mysql  (เผื่อมี admin บางคนเจอปัญหาเดียวกัน)
1. back up ข้อมูล 
     ส่วนไฟล์ my.cnf ไม่ต้องลบออกก็ได้นะครับเอาไว้ใช้ได้เลย copy เก็บไว้ก็ดี
2. ใช้คำสั่ง

service mysql stop == หยุดการทำงาน mysql
rm -fr /var/lib/mysql  == ลบ Directory mysql
rm -f /etc/init.d/mysql* == ลบไฟล์ที่ชื่อขึ้นด้วย mysql
chmod 744 /etc/my.cnf  == เปลี่ยนสิทธิของไฟล์ my.cnf ให้ root มีอำนาจเต็มที่
chmod 744 /etc/rc.d/rc.local == เปลี่ยนสิทธิของไฟล์ rc.local ให้ root มีอำนาจเต็มที่
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force     == Update perl-DBI
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force      == Update MySQL-shared
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force       == Update MySQL-client
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force       == Update MySQL-server
mysql -e "drop database if exists hos" == ลบฐานข้อมูล hos (ระวังนะครับต้อง backup ไว้ก่อนไม่งั้นนั่งร้องไห้)
mysql -e "create database hos"  == สร้างฐานข้อมูล hos
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"  == กำหนด user sa ให้ใช้ฐาน hos ได้
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"   == กำหนดสิทธิ ให้ sa

หลังจากเสร็จแล้วให้ initial import ข้อมูลเข้ามาใหม่ ใช้งานได้เลยครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: sayun ที่ กุมภาพันธ์ 10, 2009, 09:45:59 AM
 :) :) :) ต้องยกมือให้แก่เลย พี่บอย เรื่อง server  :D :D :D แจ่ม
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: machai ที่ พฤษภาคม 14, 2010, 13:55:28 PM
ก็ที่ลบข้อมูล ib0 ออก ก็ทำตามที่ อ.บอยบอกแหละครับ
ไม่รู้ทำผิดขั้นตอนตรงไหนเปล่า
ทำผิดขั้นตอน

ต้อง back up ฃ้อมูลก่อนทำ
แล้วทำตามขั้นตอนที่ให้

ลองลง server ใหม่เฉพาะ mysql ดีกว่าแล้วน่าจะหาย
ถ้า ลบ ib* แล้วมีข้อมูล ต้องระวัง
1.back up ข้อมูล
2.ใช้คำสั่งประมาณนี้
copy my.cnf กับ rc.local ก่อน
service mysql stop
export TMP=/tmp
export TMPDIR=/tmp
rm -fr /var/lib/mysql
rm -f /etc/init.d/mysql*
chmod 744 /etc/my.cnf
chmod 744 /etc/rc.d/rc.local
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
mysql -e "drop database if exists hos"
mysql -e "create database hos"
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"


เสร็จแล้ว จึง Restore ข้อมูล


ของผมเป็นแบบบนี้ครับ เป็นกับเครื่องสำรองครับ ???
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: siemens ที่ พฤษภาคม 14, 2010, 18:07:17 PM
ก็ที่ลบข้อมูล ib0 ออก ก็ทำตามที่ อ.บอยบอกแหละครับ
ไม่รู้ทำผิดขั้นตอนตรงไหนเปล่า
ทำผิดขั้นตอน

ต้อง back up ฃ้อมูลก่อนทำ
แล้วทำตามขั้นตอนที่ให้

ลองลง server ใหม่เฉพาะ mysql ดีกว่าแล้วน่าจะหาย
ถ้า ลบ ib* แล้วมีข้อมูล ต้องระวัง
1.back up ข้อมูล
2.ใช้คำสั่งประมาณนี้
copy my.cnf กับ rc.local ก่อน
service mysql stop
export TMP=/tmp
export TMPDIR=/tmp
rm -fr /var/lib/mysql
rm -f /etc/init.d/mysql*
chmod 744 /etc/my.cnf
chmod 744 /etc/rc.d/rc.local
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
mysql -e "drop database if exists hos"
mysql -e "create database hos"
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"


เสร็จแล้ว จึง Restore ข้อมูล


ของผมเป็นแบบบนี้ครับ เป็นกับเครื่องสำรองครับ ???

ถ้าหาก database ที่เครื่อง server เป็น innodb แล้ว (และมั่นใจกับข้อมูล) ลองทำตามนี้ใน slave ดูครับ

ลบ ib* 3 ไฟล์ ใน /var/lib/mysql

restart mysql (ใน my.cnf ต้องมีบรรทัด innodb_file_per_table ตามที่ อจ. mn บอกไว้)

innitial ข้อมูลจาก server ----> slave ครับ

// หากไม่มั่นใจ backup database ของ slave ไว้ก่อนก้อดีครับ
หัวข้อ: Re: สรุปแล้ว Error innodb_file_per_table ต้อง...
เริ่มหัวข้อโดย: machai ที่ พฤษภาคม 17, 2010, 20:15:23 PM
ก็ที่ลบข้อมูล ib0 ออก ก็ทำตามที่ อ.บอยบอกแหละครับ
ไม่รู้ทำผิดขั้นตอนตรงไหนเปล่า
ทำผิดขั้นตอน

ต้อง back up ฃ้อมูลก่อนทำ
แล้วทำตามขั้นตอนที่ให้

ลองลง server ใหม่เฉพาะ mysql ดีกว่าแล้วน่าจะหาย
ถ้า ลบ ib* แล้วมีข้อมูล ต้องระวัง
1.back up ข้อมูล
2.ใช้คำสั่งประมาณนี้
copy my.cnf กับ rc.local ก่อน
service mysql stop
export TMP=/tmp
export TMPDIR=/tmp
rm -fr /var/lib/mysql
rm -f /etc/init.d/mysql*
chmod 744 /etc/my.cnf
chmod 744 /etc/rc.d/rc.local
rpm -Uvh perl-DBI-1.605-1.el5.rf.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-shared-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-client-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
rpm -Uvh MySQL-server-5.1.30-0.glibc23.x86_64.rpm --nodeps --force
mysql -e "drop database if exists hos"
mysql -e "create database hos"
mysql -e "grant all on hos.* to sa@'%' identified by 'sa'"
mysql -e "grant all privileges on *.* to sa@'%' identified by 'sa' with grant option"


เสร็จแล้ว จึง Restore ข้อมูล


ของผมเป็นแบบบนี้ครับ เป็นกับเครื่องสำรองครับ ???

ถ้าหาก database ที่เครื่อง server เป็น innodb แล้ว (และมั่นใจกับข้อมูล) ลองทำตามนี้ใน slave ดูครับ

ลบ ib* 3 ไฟล์ ใน /var/lib/mysql

restart mysql (ใน my.cnf ต้องมีบรรทัด innodb_file_per_table ตามที่ อจ. mn บอกไว้)

innitial ข้อมูลจาก server ----> slave ครับ

// หากไม่มั่นใจ backup database ของ slave ไว้ก่อนก้อดีครับ
แก้ไม่หายครับ ลองแล้วครับผม เป้นไปได้ไม่ว่า mysql ไม่เหมื่อนกัน ระหว่าง master and slave  ???