คำถามติดแท็ก mysql

MySQL เป็นฐานข้อมูลโอเพ่นซอร์สที่ Oracle เป็นเจ้าของ

2
mysqldump ส่งคืนสถานะหรือไม่
ฉันกำลังสร้างสคริปต์ที่สำรองฐานข้อมูล mysql โดยใช้โปรแกรมอรรถประโยชน์ mysqldump ฉันกำลังเขียนสคริปต์นี้ในเปลือก "sh" ฉันต้องการบันทึกสถานะเอาต์พุตของ mysqldump ในสคริปต์ (เช่นถ้าคำสั่ง mysqldump ล้มเหลวหรือสำเร็จ) ดังนั้นฉันสามารถรายงานว่าสคริปต์ประสบความสำเร็จหรือไม่ mysqldump ส่งคืนสถานะเอาต์พุตหรือไม่ ใครช่วยกรุณาให้คำแนะนำในการทำเช่นนี้กับฉันได้ไหม

3
ฉันจะสร้างผู้ใช้ MySQL แบบอ่านอย่างเดียวเพื่อการสำรองข้อมูลด้วย mysqldump ได้อย่างไร
ฉันใช้automysqlbackupสคริปต์เพื่อถ่ายโอนฐานข้อมูล mysql ของฉัน แต่ฉันต้องการให้ผู้ใช้แบบอ่านอย่างเดียวทำเช่นนี้เพื่อที่ฉันจะไม่เก็บรหัสผ่านฐานข้อมูลรูทของฉันลงในไฟล์ธรรมดา ฉันได้สร้างผู้ใช้เช่นนั้น: grant select, lock tables on *.* to 'username'@'localhost' identified by 'password'; เมื่อฉันเรียกใช้mysqldump(ผ่านautomysqlbackupหรือโดยตรง) ฉันได้รับคำเตือนต่อไปนี้: mysqldump: Got error: 1044: Access denied for user 'username'@'localhost' to database 'information_schema' when using LOCK TABLES ฉันทำผิดหรือเปล่า? ฉันต้องการเงินช่วยเหลือเพิ่มเติมสำหรับผู้ใช้แบบอ่านอย่างเดียวหรือไม่? หรือสามารถrootล็อคinformation_schemaตารางเท่านั้น? เกิดอะไรขึ้น? แก้ไข: GAH และตอนนี้ก็ใช้งานได้ ฉันอาจไม่ได้เรียกใช้สิทธิ์ล้างก่อนหน้านี้ นอกจากนี้สิ่งนี้เกิดขึ้นโดยอัตโนมัติบ่อยเพียงใด แก้ไข: ไม่มันไม่ทำงาน การเรียกใช้mysqldump -u username -p --all-databases …

5
ข้อผิดพลาดในการเริ่มต้นของ MySQL - องค์ประกอบรากหายไป
ฉันติดตั้ง MySQL มาประมาณ 2 เดือนใน Windows Server 2003 R2 เมื่อเริ่มต้นเราจะพบข้อผิดพลาด "High Severity Error - องค์ประกอบรากหายไป" ตามด้วยข้อผิดพลาดความรุนแรงสูงอื่นที่แสดง "ต้องกำหนดเส้นทางของไฟล์บันทึกก่อนเรียกใช้เมธอด WriteToLog" ความช่วยเหลือใด ๆ นี้จะได้รับการชื่นชม!

4
mysql กำหนดชื่อโฮสต์ของลูกค้าอย่างไร
ฉันพยายามที่จะสร้างผู้ใช้ MySQL ซึ่งจะได้รับอนุญาตให้เชื่อมต่อกับฐานข้อมูล MySQL จากชื่อโฮสต์ที่เฉพาะเจาะจง ให้สิทธิ์ทั้งหมดบน db_name. * เป็น 'user_name'@'appserver-lan.mydomain.com' ที่ระบุโดย 'some_passwd' โดยการตรวจสอบตารางผู้ใช้บนฐานข้อมูล mysql ฉันจะเห็นว่าผู้ใช้สร้างเสร็จเรียบร้อยแล้ว: ใช้ mysql; เลือก * จากผู้ใช้ที่ผู้ใช้ = 'user_name' และโฮสต์ = 'appserver-lan.mydomain.com' หรือ แสดงทุนสำหรับ 'username'@'appserver-lan.mydomain.com' ชื่อโฮสต์ที่ฉันระบุเป็นชื่อแทนชื่อ amazon-ec2 ซึ่งเมื่อแก้ไขโดยเซิร์ฟเวอร์ AWS DNS จะส่งผลให้มีที่อยู่ LAN: [root @ db_server ~] # host appserver-lan.mydomain.com appserver-lan.mydomain.com เป็นชื่อแทนสำหรับ ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com ec2-xxx-xxx-xxx-xxx-xxx-xxx.compute-1.amazonaws.com มีที่อยู่ 10.xxx .xxx.xxx ปัญหาคือเมื่อฉันพยายามเชื่อมต่อกับฐานข้อมูล …

1
PuTTY พิมพ์ชื่อลงในคอนโซล
ฉันกำลังทำการถ่ายโอนข้อมูล MySQL ผ่าน SSH โดยใช้ Putty และตอนนี้ก็แค่พิมพ์ PuTTY ซ้ำแล้วซ้ำอีกในคอนโซล Ctrl + C ไม่ได้ทำอะไรเลย ไม่มีใครรู้ว่าทำไมสิ่งนี้เกิดขึ้น?
13 mysql  ssh  terminal  putty 

2
ผู้ใช้ MySQL คนใดจำเป็น?
เซิร์ฟเวอร์ MySQL ของฉันมีผู้ใช้แปลก ๆ จำนวนมากซึ่งฉันไม่ได้เพิ่ม สิ่งเหล่านี้จำเป็นหรือไม่ 'root'@'127.0.0.1' 'root'@'localhost' 'root'@'SERVERNAME' 'root'@'::1' ''@'SERVERNAME' ''@'LOCALHOST' หากฉันลบ root ทั้งหมดยกเว้น root @ localhost ฉันจะจบการล็อคตัวเองออกจากฐานข้อมูลได้หรือไม่ และวัตถุประสงค์ของชื่อผู้ใช้ที่ว่างเปล่าคืออะไร? พวกเขาดูเหมือนจะมี 'การใช้สิทธิ์' หรือไม่ มีความแตกต่างระหว่าง 127.0.0.1 เป็นโฮสต์และ localhost หรือไม่ ถ้าฉันมี localhost เท่านั้นไม่ใช่ 127.0.0.1 นั่นหมายความว่า mysqlclient ที่ใช้ TCP / IP แทน Unix sockets จะไม่สามารถเชื่อมต่อได้หรือไม่?

4
ใน Puppet ฉันจะรักษาความปลอดภัยตัวแปรรหัสผ่าน (ในกรณีนี้คือรหัสผ่าน MySQL) ได้อย่างไร
ฉันใช้ Puppet เพื่อจัดเตรียม MySQL ด้วยคลาสที่มีพารามิเตอร์: class mysql::server( $password ) { package { 'mysql-server': ensure => installed } package { 'mysql': ensure => installed } service { 'mysqld': enable => true, ensure => running, require => Package['mysql-server'], } exec { 'set-mysql-password': unless => "mysqladmin -uroot -p$password status", path => ['/bin', '/usr/bin'], …

4
วิธีที่ง่ายกว่าในการแปลงตารางทั้งหมดจาก InnoDB เป็น MyISAM
ก่อนหน้านี้ฉันใช้สิ่งนี้: USE dbname; ALTER TABLE tablename ENGINE=MYISAM; ฉันกำลังมองหาวิธีที่ง่ายกว่าในการแปลงตารางทั้งหมดในฐานข้อมูลแทนที่จะเขียนชื่อตารางทุกตัวทีละตัว
13 mysql  innodb  myisam 

3
เปลี่ยนเส้นทางเอาต์พุตของ mysqldump ไปยัง scp
ฉันทำงานกับ linux pro เมื่อหลายปีก่อนซึ่งทำเคล็ดลับได้ดี เขาสามารถทำmysqldump แต่เปลี่ยนเส้นทางออกกับการเชื่อมต่อ SCP / SSH มากกว่าการเขียนไปยังดิสก์ พวกเราใช้ความเงียบเล็กน้อยที่ฉันเคยทำงาน แต่ฉันจำไม่ได้ว่าจะทำเช่นนี้อีกต่อไป ตอนนี้ฉันประสบกับปัญหาที่ฮาร์ดไดรฟ์ในเซิร์ฟเวอร์ของฉันอยู่ในช่วงขาสุดท้ายและสำหรับการใช้งานแบบเข้มข้นเพื่อการติดตั้งอย่างถาวรเป็นแบบอ่านอย่างเดียว ฉันหวังว่าจะใช้การใช้เล่ห์เหลี่ยมบรรทัดคำสั่งนี้เพื่อยังคงสามารถสำรองฐานข้อมูลของฉันไปยังเซิร์ฟเวอร์ใหม่เนื่องจากการเขียนดัมพ์ไปยัง diska nd ถ่ายโอนท้องถิ่นมันชัดเจนจากคำถาม นี่เป็นเคล็ดลับเล็ก ๆ น้อย ๆ ที่เป็นไปได้จริงหรือ? ถ้าเป็นไวยากรณ์คืออะไร? ฉันได้รับรู้ตั้งแต่เนื่องจากปัญหาระบบไฟล์แบบอ่านอย่างเดียวฉันพบว่าฉันไม่สามารถเชื่อมต่อกับ mysql เพื่อถ่ายโอนข้อมูลได้ แต่ฟีดของคุณกลับมาเยี่ยมมากและหวังว่าจะใช้กับคนอื่นในอนาคต

2
มีเกณฑ์เปรียบเทียบสมรรถนะ MySQL เพื่อวัดผลกระทบของ utf8_unicode_ci เทียบกับ utf8_general_ci หรือไม่?
ผมอ่านที่นี่และมีว่าการใช้utf8_unicode_ciการเปรียบเทียบเพื่อให้แน่ใจว่าการรักษาที่ดีขึ้นของข้อความ Unicode (ตัวอย่างเช่นมัน knowns วิธีการขยายตัวอักษรเช่น 'œ' เป็น 'OE' สำหรับการค้นหาและการสั่งซื้อ) เมื่อเทียบกับการเริ่มต้นutf8_general_ciซึ่งโดยทั่วไปเพียงแถบกำกับ แต่น่าเสียดายที่ทั้งสองแหล่งข่าวระบุว่าจะช้ากว่าเล็กน้อยutf8_unicode_ciutf8_general_ci ดังนั้นคำถามของฉันคืออะไร "ช้าลงเล็กน้อย" หมายความว่าอย่างไร มีใครบ้างที่ใช้มาตรฐาน? เรากำลังพูดถึงผลกระทบของประสิทธิภาพการทำงาน -0.01% หรือมากกว่า -25% ขอบคุณสำหรับความช่วยเหลือของคุณ.

4
ฉันจะลบ mysql-server บน Debian ได้อย่างไร
ฉันคิดว่าฉันจะแบ่งปันคำถามของฉันที่นี่แล้วตอบเพราะดูเหมือนจะมีหลายคนติดอยู่ในตำแหน่งของฉัน - แต่ไม่มีคำตอบที่ชัดเจน ปัญหาคือถ้าคุณได้รับลบ mysql-server มันไม่ได้ทำความสะอาดไฟล์การกำหนดค่าและฐานข้อมูลดังนั้นถ้าคุณเมาพวกเขาอย่างใดแล้วติดตั้งอีกครั้งจะไม่แทนที่พวกเขา ดูเหมือนว่ามีหลายคนถามว่า "ฉันจะลบ mysql-server ได้อย่างสมบูรณ์เพื่อที่ฉันจะได้ติดตั้งใหม่ได้อย่างไร" - ทุกคนตอบด้วยapt-get remove --purge mysql-server- ฉันไม่แน่ใจว่าทำไม แต่นี่ไม่ได้ถอนการติดตั้งอย่างสมบูรณ์ คำตอบของฉันติดตาม ...
13 mysql  debian 

9
phpMyAdmin: ฟีเจอร์เพิ่มเติมสำหรับการทำงานกับตารางที่เชื่อมโยงนั้นถูกปิดการใช้งาน
ฉันได้รับข้อผิดพลาดนี้ในหน้าหลักของ phpMyAdmin verson: 3.2.1deb1 คุณสมบัติเพิ่มเติมสำหรับการทำงานกับตารางที่เชื่อมโยงถูกปิดการใช้งาน เพื่อหาสาเหตุคลิกที่นี่ เมื่อฉันคลิกลิงก์ฉันจะได้รับรายงานนี้ $cfg['Servers'][$i]['pmadb'] ... OK $cfg['Servers'][$i]['relation'] ... not OK [ Documentation ] General relation features: Disabled $cfg['Servers'][$i]['table_info'] ... not OK [ Documentation ] Display Features: Disabled $cfg['Servers'][$i]['table_coords'] ... not OK [ Documentation ] $cfg['Servers'][$i]['pdf_pages'] ... not OK [ Documentation ] Creation of PDFs: Disabled $cfg['Servers'][$i]['column_info'] …
13 mysql 

7
สำรองเซิร์ฟเวอร์ MySQL
วิธีที่ดีที่สุดในการสำรองเซิร์ฟเวอร์ MySQL คืออะไร ฉันต้องการวิธีการที่ไม่ต้องการให้เซิร์ฟเวอร์ขัดข้อง เป็นสิ่งที่จำเป็นต้องใช้สำหรับการสำรองข้อมูลร้อนของ InnoDBหรือฉันสามารถใช้เครื่องมือสำรองข้อมูลที่มีให้ในเครื่องมือผู้ดูแลระบบ MySQL ข้อได้เปรียบข้อเสนอหนึ่งเหนือสิ่งอื่นใด?
13 mysql  backup 

3
ฉันจะตั้งค่าการตรวจสอบ MySQL ด้วย Fail2ban ได้อย่างไร
การค้นหาอินเทอร์เน็ตด้วยเครื่องมือค้นหาบน MySQL และ fail2ban ให้ผลลัพธ์จำนวนมากในการวาง fail2ban ของคุณลงใน MySQL แต่ฉันต้องการตรวจสอบความล้มเหลวของ MySQL พยายามที่จะเข้าสู่ระบบและห้าม IP ของเหล่านั้น แอปพลิเคชันของฉันต้องการให้ฉันเปิดพอร์ตไว้สำหรับ MySQL แต่ฉันได้เปลี่ยนพอร์ตเริ่มต้นเพื่อเพิ่มความปลอดภัย เพื่อความปลอดภัยเพิ่มเติม แต่ฉันต้องการตรวจสอบล็อก MySQL ด้วย fail2ban ใครบ้างมีคำแนะนำอย่างรวดเร็วในการกำหนดค่า fail2ban สำหรับ MySQL? ฉันได้ทำการติดตั้งและทำงานกับบริการอื่น ๆ แล้วดังนั้นคุณสามารถข้ามส่วนการติดตั้งและข้ามไปทางขวาเพื่อกำหนดค่าไฟล์ปรับแต่งหรืออะไรก็ตามที่จำเป็น

5
ป้องกันการจำลองแบบไม่เขียนไปยัง MySQL ทาส?
เรามีเซิร์ฟเวอร์ฐานข้อมูล MySQL ตั้งค่าด้วยการจำลองแบบแถวเพื่อประสิทธิภาพ ซอฟต์แวร์เขียนไปยังต้นแบบและอ่านจากทั้งต้นแบบหรือทาส ทุกอย่างทำงานได้ดีส่วนใหญ่ ฉันเข้าใจว่า MySQL จะอนุญาตให้เขียนถึงทาสแม้ว่ามันจะรู้ว่ามันเป็นทาสของ MySQL ก็ตาม เป็นการดีที่ฉันจะปิดเช่นนี้ดังนั้นถ้ามีคนเขียนโค้ดที่ไม่ดีที่ได้รับการเชื่อมต่อแบบอ่านและทำUPDATEมันจะทำให้เกิดข้อผิดพลาดแทนที่จะใส่ข้อมูลลงบนทาส มีวิธีทำใน MySQL หรือไม่ เห็นได้ชัดว่าเราต้องการทำให้สิ่งนี้เป็นไปไม่ได้จากซอฟต์แวร์ของเราเช่นกัน แต่เช่นเดียวกับไฟร์วอลล์บนเซิร์ฟเวอร์ของเราฉันต้องการจะป้องกันให้มากที่สุด ขอบคุณ!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.