BMS-HOSxP Community

HOSxP => MySQL => ข้อความที่เริ่มโดย: snhos ที่ กุมภาพันธ์ 24, 2010, 09:55:30 AM

หัวข้อ: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: snhos ที่ กุมภาพันธ์ 24, 2010, 09:55:30 AM
ผมได้ slave มาใหม่จะทำ slave เลยทำตามวิธีการที่อาจารย์ MN โพสไว้  ตามวิธีด้านล่าง
แต่พอใช้คำสั่ง vi เพื่อคอนฟิกค่า my.cnf แล้วเพิ่มบรรทัดเข้าไป มันก็เกิด error  รูปที่แนบมาต้องการรู้ว่าผมใช้
คำสั่ง vi ถูกหรือเปล่า

วิธีการทำ slave  ตามที่อาจารย์หมาน้อยบอก
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=1555.0
 การกำหนดระบบ Replication ของ MySQL
« เมื่อ: กุมภาพันธ์ 08, 2007, 06:49:00 AM » อ้างถึง  

--------------------------------------------------------------------------------
ในการใช้งาน MySQL สามารถเปิดใช้งานระบบ replication ที่มีใน MySQL ได้ โดยทำตามขั้นตอนดังนี้ครับ

1. ติดตั้ง MySQL ลงในเครื่่องที่จะทำหน้าที่เป็น Slave
2. เปิด configuration file ของ mysql มาแก้ไข หากใช้ linux จะอยู่ที่ /etc/my.cnf หรือหากใช้ Windows จะอยู่ที่ c:\windows\my.ini
3 ในเครื่องที่ทำหน้าที่เป็น Master ให้เพิ่ม ตรง section [mysqld] ดังนี้ครับ


server-id=1
log-bin
sync_binlog=1
innodb_safe_binlog


และที่สำคัญต้อง grant สิทธิให้ sa ด้วยคำสั่ง
grant all on *.* to sa@'%' identified by 'sa' with grant option

4. ในเครื่องที่ทำหน้าที่เป็น Slave ให้เพิ่ม ตรง section [mysqld] ดังนี้ครับ (สมมติว่าเครื่อง server มี IP Address เป็น 192.168.0.1 นะครับ)


server-id=2
master-host=192.168.0.1
master-user=sa
master-password=sa
replicate-do-db=hos
log-warnings
slave-skip-errors=all


5. ทำการ Re-Start mysql ทั้ง master และ slave

6. ที่เครื่อง slave ใช้คำสั่ง
mysql> load data from master
เพื่อทำนำเข้าข้อมูลจากเครื่อง master ไปยัง slave

หากไม่สำเร็จให้เปิด Log file ของ MySQL มาดู ทั้งใน Master และ slave
**************************
error  ที่เกิดหลังจาก restart mysql
MySQL.Manager of pid-file quit without ประมาณนี้ครับ

หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: manoi ที่ กุมภาพันธ์ 24, 2010, 10:02:58 AM
ตัว ^M เกิดจากเอาแฟ้มมาจาก text file ที่พิมพ์จาก windows หรือ DOS ครับ มันคือสัญลักษณ์ของการขึ้นบรรทัดใหม่ ครับ สามารถลบออกได้
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: snhos ที่ กุมภาพันธ์ 24, 2010, 13:10:45 PM
อาจารย์ครับ  มันเกิด error ในเครื่อง Master ครับ ตามรูป หลังจากที่ผมเพิ่มบรรทัด
server-id=1
log-bin
sync_binlog=1
innodb_safe_binlog
ส่วนในเครื่อง slave  แก้ my.cnf  โดยการเพิ่มบรรทัดเข้าไป  รีสตาร์ท mysql แล้วผ่านครับ
ผมแนบ my.cnf มาด้วยครับ
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มดตานอย ครับ.. ที่ กุมภาพันธ์ 24, 2010, 14:25:14 PM
ที่ master
#mkdir /var/log/mysql
#chown mysql:mysql  /var/log/mysql

#service mysql restart

หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: snhos ที่ กุมภาพันธ์ 24, 2010, 14:35:39 PM
ลองตามคุณ tanoy  แล้ว ยังเหมือนเดิมครับ

อีกอย่างครับ  ผมจะลบ swap  ได้อย่างไร ตามรูป  อธิบายให้ด้วยน่ะครับ
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: snhos ที่ กุมภาพันธ์ 26, 2010, 23:35:53 PM
ผมลองทดสอบ ที่ master โดยเพิ่มทีละบรรทัด แล้ว restart mysql ปรากฏว่า
server-id=1
log-bin
sync_binlog=1  (รีสตาร์ทผ่าน)
แต่พอเปิดใช้โปรแกรม จะเกิดข้อผิดพลาด ดังนี้ครับ
error while create funtion get serialnumber can not retrieve result data

innodb_safe_binlog (รีสตาร์ทไม่ผ่านครับ)
เกิด error ดังนี้ครับ
starting mysql.manager of pid-file quit without updating fi  .. failed

ปล ผม grant  แล้วครับ  ก็ไม่ผ่าน
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ กุมภาพันธ์ 27, 2010, 09:25:40 AM
ขอดูขั้นตอนการทำหน่อย(แบบละเอียดจะได้ดูว่าไม่ผ่านตอนไหน)
ขอดู .err ด้วยนะครับใน /var/lib/mysql/
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: ismailsa ที่ กุมภาพันธ์ 27, 2010, 09:50:07 AM
config my.cnf เสร็จแล้ว stop service mysql ด้วย และใช้คำสั่งลบ ไฟล์ *ib ด้วยครับ น่าจะแก้ปัญหาได้
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มดตานอย ครับ.. ที่ กุมภาพันธ์ 27, 2010, 10:13:03 AM
เดี๋ยวผมจะเขียน และเรียบเรียงแบบละเอียด

หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มดตานอย ครับ.. ที่ กุมภาพันธ์ 27, 2010, 10:46:04 AM
อันนี้เพิ่ม ที่ master

server-id = 1
log-bin = /var/log/mysql/mysql-bin.log
binlog-do-db = hos
expire_logs_days = 10
max_binlog_size = 500M
sync_binlog=1



อันนี้เพิ่มที่  slave

server-id=2
master-host=192.168.1.1
master-user=sa
master-password=sa
replicate-do-db=hos
master-connect-retry=60
log-warnings
slave-skip-errors=all
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ กุมภาพันธ์ 27, 2010, 10:55:18 AM
config my.cnf เสร็จแล้ว stop service mysql ด้วย และใช้คำสั่งลบ ไฟล์ *ib ด้วยครับ น่าจะแก้ปัญหาได้

ไม่ต้องลบ  ไฟล์ *ib  เนื่องจากไม่เกี่ยวกับ config ที่เกี่ยวกับ ib เลย
ผมได้ slave มาใหม่จะทำ slave เลยทำตามวิธีการที่อาจารย์ MN โพสไว้  ตามวิธีด้านล่าง
แต่พอใช้คำสั่ง vi เพื่อคอนฟิกค่า my.cnf แล้วเพิ่มบรรทัดเข้าไป มันก็เกิด error  รูปที่แนบมาต้องการรู้ว่าผมใช้
คำสั่ง vi ถูกหรือเปล่า



server-id=1
log-bin
sync_binlog=1
innodb_safe_binlog


server-id=2
master-host=192.168.0.1
master-user=sa
master-password=sa
replicate-do-db=hos
log-warnings
slave-skip-errors=all




ทำตาม น้อง Tanoy999 เลยครับ แล้วแจ้งผลด้วย

อันนี้เพิ่ม ที่ master

server-id = 1
log-bin = /var/log/mysql/mysql-bin.log
binlog-do-db = hos
expire_logs_days = 10
max_binlog_size = 500M
sync_binlog=1



อันนี้เพิ่มที่  slave

server-id=2
master-host=192.168.1.1
master-user=sa
master-password=sa
replicate-do-db=hos
master-connect-retry=60
log-warnings
slave-skip-errors=all




หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มดตานอย ครับ.. ที่ กุมภาพันธ์ 27, 2010, 10:56:46 AM
อันนี้ my.cnf  master  แบบเต็มๆ  tune  เองนะครับ

################## start config #####################

[client]
port      = 3306
socket      = /var/lib/mysql/mysql.sock
default-character-set=tis620

[mysqld]
port      = 3306
socket      = /var/lib/mysql/mysql.sock
server-id = 1
log-bin = /var/log/mysql/mysql-bin.log
binlog-do-db = hos
expire_logs_days = 10
max_binlog_size = 500M
sync_binlog=1
skip-locking
key_buffer = 100M
max_allowed_packet = 64M
table_open_cache =1600
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size= 64M
thread_concurrency = 8
default-character-set=tis620
skip-name-resolve
skip-character-set-client-handshake
init_connect = 'SET NAMES tis620'
max_connections = 100

##########InnoDB Options###########
innodb_data_home_dir = /var/lib/mysql/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/lib/mysql/
innodb_buffer_pool_size = 100M
innodb_additional_mem_pool_size = 20M
innodb_log_file_size = 32M          
innodb_log_buffer_size = 8M
innodb_file_per_table
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
innodb_thread_concurrency = 0
innodb_flush_method=O_DIRECT  
innodb_doublewrite=0
innodb_support_xa = 0
innodb_open_files = 100
innodb_locks_unsafe_for_binlog=1
join_buffer_size = 2M
concurrent_insert = 2
max_heap_table_size = 16M
log_bin_trust_function_creators = 1

[mysqldump]
quick
max_allowed_packet = 16M
allow-keywords

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

[isamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

##########################end config#############################


อันนี้  my.cnf   slave  แบบเต็มๆ   tune  เอง ด้วยนะครับ

################## start config #####################

[client]
port      = 3306
socket      = /var/lib/mysql/mysql.sock
default-character-set=tis620

[mysqld]
port      = 3306
socket      = /var/lib/mysql/mysql.sock
server-id=2
master-host=192.168.1.1
master-user=sa
master-password=sa
replicate-do-db=hos
master-connect-retry=60
log-warnings
slave-skip-errors=all

skip-locking
key_buffer = 100M
max_allowed_packet = 64M
table_open_cache =1600
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size= 64M
thread_concurrency = 8
default-character-set=tis620
skip-name-resolve
skip-character-set-client-handshake
init_connect = 'SET NAMES tis620'
max_connections = 100

##########InnoDB Options###########
innodb_data_home_dir = /var/lib/mysql/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/lib/mysql/
innodb_buffer_pool_size = 100M
innodb_additional_mem_pool_size = 20M
innodb_log_file_size = 32M          
innodb_log_buffer_size = 8M
innodb_file_per_table
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
innodb_thread_concurrency = 0
innodb_flush_method=O_DIRECT  
innodb_doublewrite=0
innodb_support_xa = 0
innodb_open_files = 100
innodb_locks_unsafe_for_binlog=1
join_buffer_size = 2M
concurrent_insert = 2
max_heap_table_size = 16M
log_bin_trust_function_creators = 1

[mysqldump]
quick
max_allowed_packet = 16M
allow-keywords

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

[isamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

##########################end config##################

ส่วนขั้นตอนกรรมวิธีก็ mail มานะครับ     ยินดีให้คำแนะนำ ถึงแม้ผมอาจจะ config ไม่เต็ม  100 % แต่ผมก็พยายามทำเต็มที่ 100%
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มดตานอย ครับ.. ที่ กุมภาพันธ์ 27, 2010, 11:49:01 AM
master to master

-ลดภาระของ server
-ใช้ 2 เครื่อง ขึ้นไป
-เครื่อง1 ให้บริการ opd
-เครื่อง 2 ให้บริการ ipd

ไม่รู้ถ้ารันจริงๆ กับ รพ.ทั่วไป ขึ้นไป จะใช้ได้ดี หรือเปล่า  น่าคิด  ยังไม่ได้ลองจริงๆ

ท่านอื่นว่าอย่างไรครับ
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ กุมภาพันธ์ 27, 2010, 12:09:18 PM
master to master

-ลดภาระของ server
-ใช้ 2 เครื่อง ขึ้นไป
-เครื่อง1 ให้บริการ opd
-เครื่อง 2 ให้บริการ ipd

ไม่รู้ถ้ารันจริงๆ กับ รพ.ทั่วไป ขึ้นไป จะใช้ได้ดี หรือเปล่า  น่าคิด  ยังไม่ได้ลองจริงๆ

ท่านอื่นว่าอย่างไรครับ


น่าสนใจผมเคยเห็นแบบ master to master  3 เครื่อง
1.OPD
2.IPD
3.ดึงข้อมูลและรายงาน
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มดตานอย ครับ.. ที่ กุมภาพันธ์ 27, 2010, 12:13:40 PM
-ที่ทำไม่ได้สักทีติดที่

1.วัสดุ อุปกรณ์

2. คน

3. เวลา

 ;D ;D ;D ;D ;D ;D   มันช่างลำบากยากเข็นนัก     ตนแลที่เพิ่ง แห่งตน    สาธุ

มันเกียวกันไหมนี่
หัวข้อ: Re: ขอความช่วยเหลือเรื่องการทำ slave
เริ่มหัวข้อโดย: มนตรี บอยรักยุ้ยคนเดียว ที่ กุมภาพันธ์ 27, 2010, 12:20:58 PM
-ที่ทำไม่ได้สักทีติดที่

1.วัสดุ อุปกรณ์

2. คน

3. เวลา

 ;D ;D ;D ;D ;D ;D   มันช่างลำบากยากเข็นนัก     ตนแลที่เพิ่ง แห่งตน    สาธุ

มันเกียวกันไหมนี่


ถึงเรามีความสามารถมากแค่ไหนถ้าขาด
-การลงทุนอุปกรณ์ (ผู้บริหาร)
-คน
-เวลาที่มีอยู่จำกัดกับงานที่มากมาย

เดินทางสายกลาง ขันติ อุเบกขา
http://hosxp.net/smf/chat/
หัวข้อ: Re: ขอความช่วยเหลือ
เริ่มหัวข้อโดย: Gusbel724 ที่ กุมภาพันธ์ 27, 2010, 12:31:59 PM
อยากทราบว่า ตารางโรคเรื้อรังที่นำส่ง ERROR  14000 เลยอยากทราบว่าต้องตรวจสอบอะไรบ้าง
และลงข้อมูลในโปรแกรม HOsxp หน้าไหนบ้างคะ .........