ฉันต้องการเปลี่ยนตัวแปรเซิร์ฟเวอร์ mysql character_set_server
เป็น utf8 ฉันค้นหาใน Google แล้ว แต่ดูเหมือนจะไม่พบข้อมูลที่ฉันต้องการหรือคำแนะนำไม่ตรงกัน ดูเหมือนว่าฉันต้องแก้ไขไฟล์ชื่อ my.cnf แต่ไม่มีไฟล์นี้อยู่ในระบบของฉัน เวอร์ชันคือ 5.1.36
เปลี่ยนตัวแปรเซิร์ฟเวอร์ character_set_server
comment
หมายเหตุถึงผู้เยี่ยมชมในอนาคตที่นี่: OP ยอมรับคำตอบที่ผิด (ดูความคิดเห็นเพื่อดูว่าทำไม) โปรดดูคำตอบที่ได้รับการโหวตสูงสุดแทน (ไม่ใช่คำตอบของฉัน และฉันไม่มีส่วนได้ส่วนเสียในคำถามนี้ นี่เป็นเพียง PSA)
- person Ben Lee   schedule 15.11.2013
คำตอบ (3)
เรียกใช้แบบสอบถามนี้:
set global character_set_server = utf8;
จากนั้นรีสตาร์ท mysql คุณสามารถดูรายการตัวแปรทั้งหมดของคุณได้อย่างง่ายดาย
show variables;
person
Nicola Cossu
schedule
09.08.2011
สิ่งนี้ไม่ถูกต้อง หากคุณเรียกใช้การสืบค้นและรีสตาร์ท MySQL คุณจะมี character_set_server เหมือนกับก่อนที่คุณจะออกการสืบค้น ซึ่งอาจจะเป็น utf8 หรือไม่ก็ได้ การรีสตาร์ท mysql จะโหลดการกำหนดค่าจากดิสก์อีกครั้ง
- person Cosimo; 29.03.2012
ดูเหมือนคุณจะไม่รู้พื้นฐานของ MySQL ดังนั้นอย่างน้อยโปรดทดสอบคำตอบของคุณก่อนที่จะโพสต์
- person Federico Razzoli; 07.01.2016
ถึง OP @grai โปรดลบคำตอบนี้ออกจากคำตอบที่เลือกเพราะมันผิดพลาด
- person serge; 09.10.2018
นี่เป็นผลลัพธ์แรกจาก google
http://dev.mysql.com/doc/refman/5.0/en/server-options.html#option_mysqld_Character-set-server
มีสองวิธีในการตั้งค่านี้
- ผ่านไฟล์การกำหนดค่า (เซิร์ฟเวอร์ชุดอักขระ) จำเป็นต้องรีสตาร์ท
- หรือผ่าน
set global/session
character_set_server ไม่จำเป็นต้องรีสตาร์ท แต่ถ้าฐานข้อมูลของคุณรีสตาร์ท มันจะหายไป คุณจะต้องตั้งค่านี้อีกครั้ง
person
ajreal
schedule
09.08.2011
ขอบคุณสำหรับคำตอบของคุณ แต่ฉันไม่เข้าใจว่าทำไม downvote เอกสารนั้นไม่ชัดเจนสำหรับผู้ที่ไม่มีประสบการณ์ ดังนั้นฉันคิดว่าฉันจะถามคำถามที่นี่
- person grai; 09.08.2011
แต่มาจากผลลัพธ์ของ Google ก่อน :( คุณควรถามที่ serverfault แทนที่นี่
- person ajreal; 09.08.2011
แน่นอนคุณพูดถูก แต่ประเด็นคือ: ตัวเลือกนี้เป็นแบบไดนามิก แต่มีเพียงเซิร์ฟเวอร์เท่านั้นที่ควรตั้งค่าข้อมูลนี้ คุณไม่ควรตั้งค่าของตัวแปรนี้ด้วยตนเอง dev.mysql.com/doc/refman/5.6/ en/server-system-variables.html
- person Federico Razzoli; 07.01.2016
@FedericoRazzoli - ฉันให้ทั้งสองวิธีและอธิบายผลที่ตามมาของการใช้การกำหนดค่าด้วยตนเอง
- person ajreal; 07.01.2016
ตำแหน่งของไฟล์ my.ini และ my.cnf:
http://dev.mysql.com/doc/refman/5.0/en/option-files.html
สำหรับคำถามว่าคุณควรใช้ไฟล์ my.ini หรือ my.cnf เอกสารข้างต้นระบุว่า
ระบบ Windows ใช้ทั้ง my.ini และ my.cnf
ระบบ Linux, Unix, Mac OS X ใช้ my.cnf
person
Paul Gobée
schedule
16.06.2013
windows ใช้ทั้งสองอย่างหมายความว่าอย่างไร พวกเขามีลำดับความสำคัญหรือใช้ค่าสุ่มจากหนึ่งในนั้น?
- person serge; 09.10.2018
นานมาแล้ว. จำไม่ได้. ดูทรัพยากรที่เชื่อมโยง - ดูตาราง 4.1- อ่าน %WINDIR%\my.ini, %WINDIR%\my.cnf C:\my.ini, C:\my.cnf ฉันตีความว่าเป็นอย่างใดอย่างหนึ่ง
- person Paul Gobée; 10.10.2018
หากเป็นทั้งสองอย่าง ในอันแรก (cnf) ค่าคือ A และในอันที่สอง (ini) คือ B เราควรคาดหวังว่าจะใช้อะไร
- person serge; 11.10.2018