Score:2

ใช้ดิสก์ดิบ MySQL บน Windows หรือไม่

ธง ru

ฉันมีปัญหาในการทำให้ MySQL 5.7 ใช้ดิสก์ดิบ (อุปกรณ์บล็อก ข้ามระบบไฟล์) สำหรับข้อมูล ความเข้าใจของฉันเกี่ยวกับ เอกสาร คือโดยพื้นฐานแล้ว เมื่อรัน mysqld ครั้งแรก config จำเป็นต้องมีไฟล์ ใหม่ คำหลักในค่าสำหรับ innodb_data_file_pathและควรแทนที่ด้วย just ดิบ สำหรับการดำเนินการครั้งที่ 2

[มายเอสคิวลด์]
innodb_data_home_dir =
innodb_data_file_path = //./E::512Gnewraw

ค่าเริ่มต้นเขตเวลา = ระบบ
ฐาน = C:/MySQLSrv/
tmpdir = F:/MySQLTemp/
datadir = F:/MySQLData-ดิบ/
ไฟล์ pid = mysql.pid
พอร์ต = 3306
ซ็อกเก็ต = MySQL
เปิดใช้งานชื่อท่อ = 1
ข้ามล็อคภายนอก
key_buffer_size = 16M
innodb_log_file_size = 26547M
max_allowed_packet = 90M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
innodb_page_size = 64K

E: และ F: เป็นพาร์ติชันบน vdisk ขนาดใหญ่ (~35 TB) - การแบ่งพาร์ติชัน GPT พาร์ติชันแรกถูกตั้งค่าเป็น "ไม่ได้ฟอร์แมต" โดยการจัดการดิสก์ของ Windows และพาร์ติชันที่สองเป็น NTFS ทั่วไปที่ 4 TB (ฉันตั้งค่าขนาดไฟล์ข้อมูล innodb เป็น 512 GB เพียงชั่วคราว หลังจากที่ใช้งานไม่ได้กับ 4TB ซึ่งเป็นสิ่งที่ฉันต้องการสำหรับการทดสอบจริงๆ) โดยพื้นฐานแล้วฉันเริ่มต้นใช้งาน MySQL ตั้งแต่เริ่มต้น ดังนั้นการดำเนินการ mysqld ครั้งแรกของฉันจึงใช้ไฟล์ --initialize-ไม่ปลอดภัย ตัวเลือก. สิ่งนี้ใช้เวลาสักครู่ (นานเท่าที่ฉันคาดไว้ เนื่องจากขนาดที่กำหนดค่าสำหรับไฟล์ข้อมูลและอัตราการถ่ายโอนดิสก์ที่สังเกตในตัวจัดการงาน) และในที่สุดก็สร้างโครงสร้างไฟล์ตามปกติภายใต้การกำหนดค่า ดาต้าไดร์. ซึ่งรวมถึง มายเอสคิวแอล ไดเร็กทอรีที่มีหลายรายการ *.ไอบีดี ไฟล์ซึ่งฉันไม่แน่ใจว่าควรจะเกิดขึ้น ยังคงไม่มีข้อผิดพลาดในบันทึก mySQL และบรรทัดความคืบหน้าที่ลงท้ายด้วย 524200 แสดงว่าพื้นที่ตารางได้รับการเริ่มต้น

2021-10-21T09:47:55.686131Z 0 [คำเตือน] TIMESTAMP ที่มีค่า DEFAULT โดยปริยายเลิกใช้แล้ว โปรดใช้ตัวเลือกเซิร์ฟเวอร์ --explicit_defaults_for_timestamp (ดูรายละเอียดเพิ่มเติมในเอกสารประกอบ)
2021-10-21T09:47:55.692239Z 0 [คำเตือน] InnoDB: innodb-page-size ถูกเปลี่ยนจากค่าเริ่มต้น 16384 เป็น 65536
 100 200 300 400 500 <snip> 523900 524000 524100 524200
 100 200 300 400 500 <snip> 26200 26300 26400 26500
 100 200 300 400 500 <snip> 26200 26300 26400 26500
2021-10-21T09:56:54.318875Z 0 [คำเตือน] InnoDB: สร้างไฟล์บันทึกใหม่แล้ว LSN=130881
2021-10-21T09:56:54.471343Z 0 [คำเตือน] InnoDB: การสร้างตารางระบบข้อจำกัดคีย์นอก
2021-10-21T09:56:54.533557Z 0 [คำเตือน] ไม่พบ UUID ที่มีอยู่ ดังนั้นเราจึงถือว่านี่เป็นครั้งแรกที่เซิร์ฟเวอร์นี้เริ่มทำงาน กำลังสร้าง UUID ใหม่: 389cd84c-3255-11ec-8327-005056971dce
2021-10-21T09:56:54.536035Z 0 [คำเตือน] ตาราง Gtid ไม่พร้อมใช้งาน ไม่สามารถเปิดตาราง 'mysql.gtid_executed' ได้
2021-10-21T09:56:56.339721Z 0 [คำเตือน] ใบรับรอง CA ca.pem ลงนามด้วยตนเอง
2021-10-21T09:56:56.436944Z 1 [คำเตือน] root@localhost ถูกสร้างขึ้นด้วยรหัสผ่านที่ว่างเปล่า ! โปรดพิจารณาปิดตัวเลือก --initialize-insecure

ดังนั้นฉันจึงเปลี่ยนตัวเลือกเป็น ดิบและเปิดใช้บริการ (ฉันได้สร้างไว้แล้วก่อนหน้านี้) บริการยุติลงทันที โดยลงบันทึกว่าต้องการสร้างพื้นที่ตาราง (อีกแล้วเหรอ) เพราะหาไม่พบ และนี่เป็นความคิดที่ไม่ดีหากมีการบันทึกการทำซ้ำ ซึ่งพวกเขาทำ --initialize-ไม่ปลอดภัย ตัวเลือกสร้างพวกเขาตามที่คาดไว้

2021-10-21T10:08:09.625276Z 0 [คำเตือน] การประทับเวลาที่มีค่า DEFAULT โดยปริยายเลิกใช้แล้ว โปรดใช้ตัวเลือกเซิร์ฟเวอร์ --explicit_defaults_for_timestamp (ดูรายละเอียดเพิ่มเติมในเอกสารประกอบ)
2021-10-21T10:08:09.625424Z 0 [หมายเหตุ] --secure-file-priv ถูกตั้งค่าเป็น NULL การดำเนินการที่เกี่ยวข้องกับการนำเข้าและส่งออกข้อมูลถูกปิดใช้งาน
2021-10-21T10:08:09.625800Z 0 [หมายเหตุ] MySQL (mysqld 5.7.29) เริ่มต้นเป็นกระบวนการ 3356 ...
2021-10-21T10:08:09.634217Z 0 [คำเตือน] InnoDB: innodb-page-size ถูกเปลี่ยนจากค่าเริ่มต้น 16384 เป็น 65536
2021-10-21T10:08:09.634627Z 0 [หมายเหตุ] InnoDB: Mutexes และ rw_locks ใช้ฟังก์ชันที่เชื่อมต่อกันของ Windows
2021-10-21T10:08:09.634873Z 0 [หมายเหตุ] InnoDB: ใช้ mutexes เหตุการณ์
2021-10-21T10:08:09.635033Z 0 [หมายเหตุ] InnoDB: _mm_lfence() และ _mm_sfence() ใช้สำหรับกั้นหน่วยความจำ
2021-10-21T10:08:09.635262Z 0 [หมายเหตุ] InnoDB: ตารางที่บีบอัดใช้ zlib 1.2.11
2021-10-21T10:08:09.636051Z 0 [หมายเหตุ] InnoDB: จำนวนพูล: 1
2021-10-21T10:08:09.636460Z 0 [หมายเหตุ] InnoDB: ไม่ใช้คำสั่ง CPU crc32
2021-10-21T10:08:09.638441Z 0 [หมายเหตุ] InnoDB: กำลังเริ่มต้นบัฟเฟอร์พูล ขนาดรวม = 52G อินสแตนซ์ = 16 ขนาดก้อน = 128M
2021-10-21T10:08:10.597917Z 0 [หมายเหตุ] InnoDB: เสร็จสิ้นการเริ่มต้นของบัฟเฟอร์พูล
2021-10-21T10:08:11.118090Z 0 [หมายเหตุ] InnoDB: ไม่มีไฟล์ข้อมูล innodb_system ไฟล์แรก '//./E:' พื้นที่ตารางใหม่จะถูกสร้างขึ้น!
2021-10-21T10:08:11.118733Z 0 [ข้อผิดพลาด] InnoDB: ทำซ้ำไฟล์บันทึก '.\ib_logfile0' อยู่ ไม่แนะนำให้สร้างพื้นที่ตารางของระบบด้วยไฟล์บันทึกการทำซ้ำที่มีอยู่ โปรดลบไฟล์บันทึกการทำซ้ำทั้งหมดก่อนที่จะสร้างพื้นที่ตารางระบบใหม่
2021-10-21T10:08:11.119256Z 0 [ข้อผิดพลาด] InnoDB: การสร้างฐานข้อมูล InnoDB ถูกยกเลิกโดยมีข้อผิดพลาดทั่วไป คุณอาจต้องลบไฟล์ ibdata1 ก่อนพยายามเริ่มต้นใหม่อีกครั้ง
2021-10-21T10:08:11.336787Z 0 [ข้อผิดพลาด] ฟังก์ชันเริ่มต้นของปลั๊กอิน 'InnoDB' ส่งกลับข้อผิดพลาด
2021-10-21T10:08:11.337058Z 0 [ข้อผิดพลาด] การลงทะเบียนปลั๊กอิน 'InnoDB' เป็น STORAGE ENGINE ล้มเหลว
2021-10-21T10:08:11.337286Z 0 [ข้อผิดพลาด] ไม่สามารถเริ่มต้นปลั๊กอินในตัว
2021-10-21T10:08:11.337474Z 0 [ข้อผิดพลาด] การยกเลิก

2021-10-21T10:08:11.337615Z 0 [หมายเหตุ] สิ้นสุด Binlog
2021-10-21T10:08:11.337839Z 0 [หมายเหตุ] กำลังปิดปลั๊กอิน 'CSV'
2021-10-21T10:08:11.338806Z 0 [หมายเหตุ] MySQL: การปิดระบบเสร็จสมบูรณ์

ฉันพลาดอะไรไปที่นี่? เหตุใด MySQL จึงไม่พบไฟล์ข้อมูลดิสก์ดิบหลังจากเริ่มต้นครั้งแรก

Score:0
ธง jp

ดูเหมือนว่าคุณไม่ได้ปฏิบัติตามรายละเอียดเฉพาะนี้จากเอกสารที่แสดงรายการ

//./ สอดคล้องกับไวยากรณ์ Windows ของ \.\ สำหรับการเข้าถึงฟิสิคัลไดรฟ์

Windows มีไวยากรณ์ที่แตกต่างจาก Linux OS

ru flag
คุณกำลังตีความรายละเอียดนั้นผิด - แบ็กสแลชเป็นสัญกรณ์ดั้งเดิมของ windows แต่ MySQL คาดว่าจะใช้เครื่องหมายสแลชไปข้างหน้าในไฟล์กำหนดค่าเนื่องจากใช้แบ็กสแลชเป็นอักขระหลีก การพยายามใช้แบ็กสแลชส่งผลให้เกิดข้อผิดพลาด: ```2021-10-22T19:29:29.426724Z 0 [ข้อผิดพลาด] InnoDB: ไฟล์ \.\E:: 'เปิด' ส่งคืนข้อผิดพลาด OS 223 ไม่สามารถดำเนินการต่อได้```
ru flag
และเพื่อความครบถ้วน ฉันยังลองใช้แบ็กสแลชในโหมด Escape เช่น ป้อน `\.\E:` ในไฟล์กำหนดค่า ผลลัพธ์ค่อนข้างเหมือนกับที่อธิบายไว้ในคำถาม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา