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

MySQL ทุกรุ่น (ไม่ใช่ Microsoft SQL Server) โปรดเพิ่มแท็กเฉพาะเวอร์ชันเช่น mysql-5.7 หากเกี่ยวข้องกับคำถาม

2
mysql.proc หยุดทำงานไม่สามารถทำ mysqldump ได้หรือไม่?
เนื่องจากปัญหาบางอย่างกับ InnoDB ฉันจะถ่ายโอนฐานข้อมูลทั้งหมดไปยังเซิร์ฟเวอร์ใหม่: mysqldump -E -R --all-databases | pv -b | mysql -u root -p -h new.server กระบวนการดัมพ์หยุดทำงานโดยมีข้อผิดพลาด: 59.9kB assword: 59.9kB ERROR 145 (HY000) at line 2970: Table './mysql/proc' is marked as crashed and should be repaired 228MB mysqldump: Got errno 32 on write ฉันใช้คำสั่งต่อไปนี้เพื่อซ่อมแซมตารางทั้งหมดในฐานข้อมูลทั้งหมด: mysqlcheck --auto-repair --all-databases เมื่อฉันตรวจสอบmysql.procสถานะฉันจะได้รับ: mysql> …

1
MySQL: เพิ่มประสิทธิภาพยูเนี่ยนด้วย“ ORDER BY” ในการค้นหาภายใน
ฉันเพิ่งตั้งค่าระบบบันทึกซึ่งประกอบด้วยหลายตารางที่มีเค้าโครงเดียวกัน มีตารางหนึ่งตารางสำหรับแหล่งข้อมูลแต่ละแหล่ง สำหรับโปรแกรมดูบันทึกฉันต้องการ ยูเนี่ยนทุกตารางบันทึก , กรองพวกเขาโดยการบัญชี , เพิ่มคอลัมน์หลอกสำหรับการระบุแหล่งที่มา เรียงพวกเขาโดยเวลา , และจำกัด พวกเขาสำหรับการแบ่งหน้า ตารางทั้งหมดมีเขตข้อมูลที่เรียกzeitpunktว่าเป็นคอลัมน์วันที่ / เวลาที่จัดทำดัชนี ความพยายามครั้งแรกของฉันคือ: (SELECT l.id, l.account_id, l.vnum, l.count, l.preis, l.zeitpunkt AS zeit, 'hp' AS source FROM is_log AS l WHERE l.account_id = 730) UNION (SELECT l.id, l.account_id, l.vnum, l.count, l.preis, l.zeitpunkt, 'ig' AS source FROM ig_is_log AS …

1
กำลังดับ - การค้นหาเสร็จสิ้นหรือไม่
มีวิธีการตรวจสอบและดูว่าแบบสอบถามเสร็จหรือไม่ ฉันใช้คำสั่งอัปเดตที่รันมานาน 3 ครั้ง (+/- 25 ชั่วโมงต่อครั้ง) เมื่อฉันออกจากบ้านเพื่อไปพักผ่อนในสัปดาห์ที่แล้ว น่าเสียดายที่บางช่วงสัปดาห์ที่ไฟฟ้าดับและเครื่องที่ใช้ MYSQL ก็ปิดตัวลง มีวิธีในการตรวจสอบและดูว่าแบบสอบถาม 3 รายการ (หรือทั้งสามรายการ) ใดที่เสร็จสมบูรณ์หรือไม่ ฉันรู้ว่าฉันสามารถตรวจสอบเพื่อดูว่าข้อมูลได้รับการปรับปรุงหรือไม่ แต่คาดว่าจะต้องมี NULL ด้วยการดำเนินการที่ถูกต้องและครบถ้วนและมีข้อมูล 48 ล้านแถวเพื่ออ่าน ความคิดใด ๆ
9 mysql 

1
Amazon RDS MySQL 5.5 Innodb Lock timeout เกินกำหนดแล้ว
นับตั้งแต่เราย้ายไปที่ Amazon RDS เรามีปัญหาเรื่องประสิทธิภาพที่ค่อนข้างบ้าคลั่งและวันนี้เราเริ่มมีปัญหาการล็อค ด้วยเหตุนี้ฉันจึงพบว่ามันเป็นปัญหาการหมดเวลาและไปตรวจสอบหน่วยความจำที่เราใช้ เราแลกเปลี่ยนกันได้ประมาณ 70MB ฉันไปที่หน่วยความจำแม่มดล่าสัตว์กับ mysqltuner และมันบอกว่าการใช้หน่วยความจำสูงสุดประมาณ 400% เป็นไปได้ ตอนนี้ฉันได้ลดลงเหลือเพียงเล็กน้อย> 100% ขอบคุณตัวช่วยสร้างการกำหนดค่าของ Percona อย่างไรก็ตามเรายังคงมีปัญหาการล็อคนี้ดังนั้นฉันคิดว่ามันไม่เกี่ยวข้องกับหน่วยความจำ / การแลกเปลี่ยน ทำไมฉันยังคงได้รับการล็อค เกิดอะไรขึ้นที่นี่? ฉันมั่นใจว่าการรีบูตจะแก้ปัญหาได้ แต่นั่นไม่ควรเป็นวิธีแก้ปัญหา เราจะทำอย่างไรเพื่อป้องกันปัญหานี้ในอนาคต ฉันพยายามล้างแคชแบบสอบถามและตาราง - ใช้งานได้ ฟลัชประเภทอื่นไม่ทำงานขอบคุณ RDS: / นี่คือความมั่งคั่งของข้อมูลที่ฉันคิดได้: QUERY INSERT INTO `myTable` (`firstName`, `lastName`, `email`) VALUES ('Travis', 'B...', '...@gmail.com') ข้อความผิดพลาด Lock wait timeout exceeded; try restarting transaction …

3
mysql ใช้เวลาในการส่งข้อมูลนานเกินไป
ฉันมีตารางง่าย ๆ ที่มีล้านเรคคอร์ด (14,000,000) และสำหรับเคียวรี่ธรรมดา ๆ มันใช้เวลามากเกินไปในการ "ส่งข้อมูล" โต๊ะ CREATE TABLE IF NOT EXISTS details ( id int(11) NOT NULL, date date NOT NULL, time int(2) NOT NULL, minutes_online decimal(5,0) NOT NULL, minutes_playing decimal(5,0) NOT NULL, minutes_chatting decimal(5,0) NOT NULL, minutes_away decimal(5,0) NOT NULL PRIMARY KEY (id,date,time) ) ENGINE=MyISAM DEFAULT …

3
วิธีแก้ไขการเชื่อมต่อมากเกินไปและข้อผิดพลาดร้ายแรงใน mysql ที่รันบน vps
ฉันกำลังเรียกใช้แอปพลิเคชั่น PHPlist บนเซิร์ฟเวอร์ linode ของฉันพร้อมใช้งานสคริปต์ PHP 12 สคริปต์ซึ่งแต่ละอันจะเปิดการเชื่อมต่อ MySQL ตอนนี้เมื่อฉันเข้าถึง PHPlist มันมักจะแสดงข้อผิดพลาดนี้: ข้อผิดพลาดร้ายแรง: ขออภัยเซิร์ฟเวอร์ไม่ว่างในขณะนี้โปรดลองอีกครั้งในภายหลัง เมื่อฉันพยายามเข้าถึง phpMyAdmin จะแสดงข้อผิดพลาด # 1040 ผลลัพธ์ของสคริปต์ PHP ของฉันที่ทำงานผ่านcronงานแสดง: คำเตือน PHP: mysqli_connect (): (HY000 / 1040): การเชื่อมต่อมากเกินไป ฉันใช้ LAMP stack บนเซิร์ฟเวอร์ด้วย phpMyAdmin topการส่งออกในรายการสถานีmysqldโดยใช้ CPU 100-130% เมื่อฉันพยายามแก้ไขปัญหานี้ฉันได้รับเบาะแสบางอย่าง: เพิ่มตัวแปร max_connection: ฉันใช้ 200 (100 เป็นค่าเริ่มต้น) แคชตารางเปิด: 512 (400 ตามค่าเริ่มต้น) มีตัวแปรมากมายที่ต้องตั้งค่า …
9 mysql  phpmyadmin  php 

2
คำขอ Amazon RDS I / O - 1 ข้อความค้นหา = 1 I / O ที่เรียกเก็บเงินได้?
ฉันมีฐานข้อมูล InnoDB ที่ฉันต้องการย้ายไปยัง Amazon RDS การติดตั้งในปัจจุบันของฉันซึ่งโฮสต์บนเซิร์ฟเวอร์ของฉันเองนั้นแสดงให้เห็นถึงการสืบค้น 8 ล้านครั้งต่อเดือน ไซต์ RDSบอกว่าอัตรา I / O อยู่ที่ $ 0.10 ต่อ 1 ล้านคำขอ 1 I / O = 1 แบบสอบถามหรือไม่ เช่นฉันจะถูกเรียกเก็บเงินจำนวน $ 80 / เดือนสำหรับการใช้งานจำนวนนี้ + ค่าธรรมเนียม RDS หรือไม่
9 mysql  innodb 

2
อัปเดตหลายแถวในตารางด้วยคำสั่งเดียว?
วิธีที่ง่ายที่สุดในการอัปเดตแถวจำนวนมากในตารางคืออะไร ฉันมีไฟล์ csv ที่มีลักษณะเช่นนี้: |primary_key |value| | 1 | xyz| | 2 | abc| | 3 | def| ... แถวที่มีคีย์หลักเหล่านี้มีอยู่แล้วในตารางเป้าหมาย ฉันต้องการอัปเดตตารางเป้าหมายด้วยค่าเหล่านี้ มีไวยากรณ์เพื่อให้ฉันสามารถเขียนสิ่งที่ชอบ: update mytable set value = ('xyz', 'abc', 'def') where primary key = (1,2,3); มองผ่านMySQL ปรับปรุงอ้างอิงไซต์นี้ ( MySQL - ปรับปรุง CSV ) ดังนั้น ( ปรับปรุงหลายแถว , การปรับปรุงฐานข้อมูลหลาย , การปรับปรุงหลายแถว …
9 mysql  update  replace 

2
ฉันจะรับแผนปฏิบัติการสำหรับมุมมองได้อย่างไร
ฉันมีสคีมาพร้อมจำนวนการดู ฉันต้องตรวจสอบแผนการดำเนินการเพื่อให้แน่ใจว่ามีการใช้ดัชนีที่เหมาะสมและถูกต้องหรือไม่ ฉันจะทำสิ่งนี้ได้อย่างไร ฉันไม่ต้องการคัดลอกและวางผลลัพธ์จากshow create view <viewname>ลงในexplainโดยเฉพาะอย่างยิ่งเนื่องจากบางมุมมองถูกสร้างขึ้นจากมุมมองอื่นและนี่อาจเป็นความเจ็บปวด

4
จะแสดงโครงสร้างฐานข้อมูลใน phpMyAdmin อย่างไร
มีวิธีการสร้างรายงานของโครงสร้างฐานข้อมูลของฉันโดยใช้ phpMyAdmin หรือไม่ สิ่งที่ฉันต้องการคือรูปแบบตารางดังต่อไปนี้และตารางความสัมพันธ์เอนทิตี Table name: List Description: Subscriber list information Field Type Null Description ListID Int N ListName Varchar N ListFromName Varchar N Default person represent for the mail ListReplyTo Varchar N Default return address ListSubject Varchar N Default subject title of mail ListRemindSub Int N Whether notify when …

3
ทำไม MySQL ตารางขัดข้อง ฉันจะป้องกันมันได้อย่างไร
ฉันเป็นผู้ดูแลระบบของไซต์Moodleที่ตารางผู้ใช้เสียหายและกลายเป็นใช้ไม่ได้ โชคดีที่ความเรียบง่ายREPAIR TABLE mdl_userทำให้มันทำงานได้อีกครั้ง สิ่งนี้คือฉันไม่รู้ว่าทำไมมันจึงล้มเหลวจริง ๆ และทำให้มันใช้ไม่ได้และฉันต้องการให้แน่ใจว่าฉันจะเตรียมตัวดีขึ้นในครั้งต่อไป ฉันไม่ใช่ DBA ที่มีประสบการณ์อย่างถี่ถ้วน - ฉันเป็นเพียงนักพัฒนาที่ทำสิ่งต่างๆมากมายดังนั้นโปรดอดทนกับฉัน ฉันสามารถกู้คืนข้อมูลสำรอง แต่ฉันเดาว่ามีวิธีการป้องกันการล่ม ตารางเหล่านั้นคือ utf8_general_ci และใช้ MyISAM ทำไมตาราง MySQL ผิดพลาด ฉันจะทำอย่างไรเพื่อป้องกันไม่ให้เกิดขึ้น
9 mysql  myisam 

2
ทำไมคำสั่ง UPDATE SET REPLACE () จะจับคู่แถว แต่ไม่เปลี่ยนเลยและไม่มีคำเตือน?
ฉันกำลังค้นหาสตริงที่แน่นอนในเขตข้อมูลและต้องการแทนที่ด้วยสตริงใหม่ โดยเฉพาะฉันต้องการให้การอ้างอิงทั้งหมดไปยัง URL หนึ่งเปลี่ยนเป็น URL อื่น ฉันได้สร้างคำสั่ง SQL นี้ขึ้นและกำลังเรียกใช้งานที่mysql>พรอมต์ของ CentOS 5.5 โดยใช้ MySQL Community Server 5.1.54 update [table] set [field] = REPLACE([field],'%domain.com%','%domain.org%'); คำตอบคือ: Query OK, 0 rows affected (0.02 sec) Rows matched: 618 Changed: 0 Warnings: 0 ฉันจะติดตามสาเหตุที่ไม่มีการเปลี่ยนแปลงได้อย่างไร แก้ไข 1: ขอบคุณ Aaron Bertrand ฉันค้นพบว่าREPLACE()ไม่สามารถจัดการสัญลักษณ์แทนได้และฉันใช้ผิดทั้งหมด (คิดว่า: WHEREclause หายไป) นี่คือคำแถลงการปฏิรูปของฉัน: UPDATE [table] …
9 mysql  dml 


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

1
บันทึกธุรกรรมและบันทึกไบนารีแตกต่างกันอย่างไร
มาจากร้าน SQL Server ตอนนี้ฉันทำงานกับ MySQL และฉันอยากรู้ ล็อกไบนารีของ MySQL กับธุรกรรมล็อกของ MSSQL แตกต่างกันอย่างไร? จากแนวโน้มจนถึงขณะนี้ดูเหมือนว่ามีเพียงหนึ่งไบนารีบันทึกต่อหนึ่งอินสแตนซ์ MySQL ซึ่งตรงข้ามกับบันทึกธุรกรรมต่อฐานข้อมูลเช่นเดียวกับใน MSSQL

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