การกำหนดค่าอินสแตนซ์ของ MySQL 5.1 บน Windows 7 Professional x64 ล้มเหลว


8

ฉันพยายามตั้งค่าแล็ปท็อปของฉันให้ทำงานเป็นสภาพแวดล้อมการพัฒนาอุปกรณ์พกพา การติดตั้งซอฟต์แวร์บนเครื่อง Linux ของฉันและการกำหนดค่าค่อนข้างตรงไปตรงมา แต่ฉันมีปัญหาในการติดตั้งและกำหนดค่า MySQL 5.1 Server บน Windows 7 Professional 64 บิต ปัจจุบันฉันใช้ Windows MSI Installer สำหรับระบบ MySQL 5.1 ที่สมบูรณ์ (ตรงข้ามกับโปรแกรมติดตั้ง Essentials ยังมีอยู่) ฉันพยายามติดตั้งโดยใช้ MySQL 5.1 ทั้งรุ่น 32 บิตและ 64 บิต - เหตุการณ์เดียวกันเกิดขึ้นทั้งคู่

ฉันได้ติดตั้งทั้งตัวช่วยสร้างการกำหนดค่าเซิร์ฟเวอร์อินสแตนซ์และ Workbench และทุกอย่างดูเหมือนจะติดตั้งได้ เมื่อฉันเปิดตัวช่วยสร้างการกำหนดค่าอินสแตนซ์ฉันเลือกการกำหนดค่าโดยละเอียด ในหน้าจอถัดไปฉันเลือกสภาพแวดล้อมการพัฒนาจากนั้นฐานข้อมูลมัลติฟังก์ชั่นในหน้าจอถัดไป ฉันไม่เปลี่ยนแปลงการตั้งค่า InnoDB ฉันเลือกการตั้งค่าด้วยตนเองพร้อม 5 การเชื่อมต่อพร้อมกัน ฉันเปิดใช้งานเครือข่าย TCP / IP บนพอร์ต 3306 และเปิดใช้งานโหมดเข้มงวด ฉันเลือกชุดอักขระมาตรฐาน ฉันจะทำเครื่องหมายในช่องสำหรับติดตั้งเป็นบริการ Windows (และระบุชื่อ "MySQL") และรวม Bin Bin ไว้ใน Windows PATH ในหน้าจอถัดไปฉันตั้งชื่อผู้ใช้รูทและรหัสผ่านของฉัน ฉันไม่เปิดใช้งานการเข้าถึงรูทจากเครื่องระยะไกลและฉันจะไม่สร้างบัญชีที่ไม่ระบุชื่อ

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

ฉันอยากจะใช้ทั้งแล็ปท็อป Windows และ Linux ของฉันเป็นสภาพแวดล้อมการพัฒนาอุปกรณ์พกพาที่เต็มไปด้วยลมหายใจ แต่ฉันทำไม่ได้หากไม่สามารถรัน MySQL ได้ มีใครพบปัญหานี้มาก่อนหรือไม่ ฉันต้องแก้ไขตัวเลือกใดบ้าง


คุณใช้ MySQL รุ่น 32 บิตหรือ 64 บิตอยู่หรือไม่?
Paul Kroon

ฉันลองทั้งสองอย่างแล้ว แต่ฉันอยากจะติดตั้งเวอร์ชัน 32 บิตเพื่อรัน MySQL รุ่นเดียวกันกับเครื่องอื่น ๆ ของฉัน (แม้ว่าฉันไม่รู้จริง ๆ ว่า 32 vs 64 บิตบนเครื่อง dev ทั้งสองของฉันจะทำ แตกต่าง - ฉันไม่คิดว่ามันจะ)
Thomas Owens

คำตอบ:


10

ฉันมีปัญหานี้หลังจากยกเลิกการติดตั้งและติดตั้งใหม่ ระหว่างการติดตั้ง MSI เมื่อถามรหัสผ่านรูท - ตรวจสอบว่ามีการขอ 'รหัสผ่านเก่า' เพิ่มเติมจากรหัสใหม่หรือไม่ ถ้าเป็นเช่นนั้นนี่เป็นตัวบ่งชี้ว่ามีไฟล์ฐานข้อมูลเก่า ๆ ฉันพบไฟล์ db ของฉันใน C: \ ProgramData \ MySQL ถอนการติดตั้ง MYSQL กำจัดไดเรกทอรีนี้ (สมมติว่าคุณไม่สนใจฐานข้อมูล) จากนั้นติดตั้งใหม่และคุณจะดี


1

ลองคลิกขวาที่ msi แล้วเลือก "Run as Administrator" โปรดจำไว้ว่าการเริ่มต้นด้วย windows Vista คุณไม่ได้ทำงานด้วยสิทธิ์ผู้ดูแลระบบตามค่าเริ่มต้นแม้ว่าคุณจะลงชื่อเข้าใช้บัญชีผู้ดูแลระบบก็ตาม แต่การใช้บัญชีระดับผู้ดูแลระบบจะช่วยให้คุณสามารถยกระดับกระบวนการเฉพาะเมื่อคุณต้องการ


มันไม่ใช่ MSI เครื่องมือการกำหนดค่าได้รับการติดตั้งแล้ว ฉันไม่สามารถใช้มันเพื่อกำหนดค่าอินสแตนซ์
Thomas Owens

@Thomas - ไม่เป็นไรฉันถูกวางสาย "โดยใช้โปรแกรมติดตั้ง Windows MSI" ที่กล่าวถึงคำแนะนำยังคงใช้: ตรวจสอบให้แน่ใจว่าคุณเรียกใช้โปรแกรมในฐานะผู้ดูแล
Joel Coehoorn

ไม่มีตัวเลือกคลิกขวาเพื่อเรียกใช้ในฐานะผู้ดูแลระบบ อย่างไรก็ตามเมื่อฉันเรียกใช้กล่องโต้ตอบจะถามฉันว่าฉันต้องการอนุญาตให้แอปพลิเคชันทำการเปลี่ยนแปลงกับคอมพิวเตอร์ของฉันหรือไม่ - ฉันตอบว่าใช่ตรงนั้น
Thomas Owens

1

การติดตั้งเข้ามาหาฉันเช่นกัน ฉันปิดกระบวนการที่หยุดทำงานแล้วไปที่เริ่ม> โปรแกรมทั้งหมด >> MySQL >> MySQL Server 5.1

ณ จุดนี้คุณควรกดแป้น SHIFT ค้างไว้และคลิกขวาที่ "MySQL Server Instance Config Wizard" และเลือก "RUN AS ADMINISTRATOR" จากเมนู คุณควรจะสามารถเรียกใช้การตั้งค่าทั้งหมดอีกครั้งและจะไม่หยุดเมื่อสิ้นสุด "RUN AS ADMINISTRATOR" สร้างความแตกต่าง!


1

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

  1. ตรวจสอบให้แน่ใจว่าตัวเลือก datadir ใน my.ini ชี้ไปที่ไดเรกทอรีฐานข้อมูลใหม่ของคุณ
  2. ตรวจสอบให้แน่ใจว่าคุณได้คัดลอกไฟล์ทั้งหมดจากไดเรกทอรีเริ่มต้นไปยังไดเรกทอรีใหม่
  3. ลบไฟล์ ibdata และ ib_logfile ใด ๆ จากไดเร็กทอรีใหม่

รายละเอียด === ===

ฉันกำลังติดตั้ง MySQL Server 5.5 บน Win 7 และได้รับปัญหานี้ - ตัวช่วยสร้างการกำหนดค่าอินสแตนซ์ของเซิร์ฟเวอร์ MySQL ยังคงค้างอยู่ที่ "เริ่มบริการ" ฉันลองถอนการติดตั้งและลบไฟล์ MySQL ในเครื่องทั้งหมดแล้วเรียกใช้ตัวช่วยสร้างในฐานะผู้ดูแลระบบ แต่ได้รับผลลัพธ์เหมือนเดิม

เอกสารประกอบการแก้ไขปัญหา MySQL ให้เบาะแสที่ดีบางอย่าง ในที่สุดฉันก็รู้ว่าปัญหาคือการที่ฉันเปลี่ยนตำแหน่งของไฟล์ข้อมูล MySQL ในตัวช่วยสร้างจากเซิร์ฟเวอร์ C: \ Program Files \ MySQL \ MySQL Server 5.5 \ data เป็น D: \ MySQL Datafiles MySQL มีไฟล์ระบบที่สำคัญในไดเรกทอรีข้อมูลนั้น - หากไม่สามารถค้นหาได้บริการจะไม่เริ่มทำงาน

  • ฉันเปิดไฟล์การกำหนดค่า C: \ Program Files \ MySQL \ MySQL Server 5.5 \ my.ini ใน notepad (ทำงาน notepad ในฐานะผู้ดูแลระบบ) ฉันพบตัวช่วยสร้างการกำหนดค่าไม่ได้เปลี่ยนตัวเลือก datadir ซึ่งยังคงชี้ไปที่โฟลเดอร์เริ่มต้น ฉันเปลี่ยนมันเป็นที่อยู่ใหม่ด้วยตนเองและบันทึกไฟล์

  • พยายามเริ่มบริการ MySQL ด้วยตนเอง แต่ไปที่ข้อผิดพลาด 1,067 ข้อ

  • ตระหนักว่าไม่มีไฟล์ระบบอยู่ในไดเรกทอรีใหม่ดังนั้นจึงคัดลอกไฟล์ทั้งหมดจาก C: \ Program Files \ MySQL \ MySQL Server 5.5 \ data ไปยังตำแหน่งใหม่และลองรีสตาร์ทบริการ MySQL ด้วยตนเอง มีข้อผิดพลาดเก่า

  • เมื่อฉันดูในไดเรกทอรีไฟล์ข้อมูลใหม่ฉันพบว่า MySQL ได้สร้างไฟล์บันทึก .err ที่นั่นด้วยบรรทัดเหล่านี้

InnoDB: ไม่พบจุดตรวจสอบที่ถูกต้อง

InnoDB: หากข้อผิดพลาดนี้ปรากฏขึ้นเมื่อคุณกำลังสร้างฐานข้อมูล InnoDB

InnoDB: ปัญหาอาจเป็นไปได้ว่าในช่วงที่คุณพยายามจัดการก่อนหน้านี้

InnoDB: เพื่อสร้างไฟล์ข้อมูล InnoDB แต่การสร้างไฟล์บันทึกล้มเหลว

InnoDB: หากเป็นกรณีนี้โปรดอ้างอิง

InnoDB: http://dev.mysql.com/doc/refman/5.5/en/error-creating-innodb.html

หน้ามันบอกให้ฉันลบไฟล์เก่า ๆ ของ ibdata และ ib_logfile จากไดเรกทอรีข้อมูลของฉันที่ค้างอยู่จากการพยายามติดตั้งครั้งก่อน ทันทีที่ฉันทำสิ่งนี้บริการก็สามารถเริ่มต้นได้


1

ฉันมีปัญหาเดียวกันกับที่ MySQL Server Instance Configuration แขวนอยู่ที่ Start Service ฉันพยายามใช้ตัวเลือกRun As Administrator stiil มีปัญหาเดียวกัน

หลังจากลบibdataและib_logfileจากdatadirมันเริ่ม

ข้อผิดพลาดที่ฉันมีใน.errไฟล์อยู่ด้านล่าง

110616 10:32:35 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: Error: log file .\ib_logfile0 is of different size 0 23068672 bytes
InnoDB: than specified in the .cnf file 0 25165824 bytes!
110616 10:32:35 [ERROR] Plugin 'InnoDB' init function returned error.
110616 10:32:35 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
110616 10:32:35 [ERROR] Unknown/unsupported table type: INNODB
110616 10:32:35 [ERROR] Aborting

110616 10:32:35 [Note] C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld: Shutdown complete

1

หากคุณไม่สนใจเกี่ยวกับฐานข้อมูลที่มีอยู่แล้วทำสิ่งที่ฉันทำมันจะทำงานได้อย่างแน่นอน

  1. ปิดใช้งานโปรแกรมป้องกันไวรัสและตรวจสอบให้แน่ใจว่าพอร์ต 3306 เปิดอยู่ (ไม่ถูกบล็อกโดย windows / ไฟร์วอลล์อื่น ๆ )
    ขั้นตอนนี้เป็นจริงเพื่อความปลอดภัย ..
  2. ถอนการติดตั้งติดตั้งปัจจุบันของคุณลบโฟลเดอร์จากMySQL โฟลเดอร์นี้จะถูกซ่อน ดังนั้นเพียงพิมพ์เส้นทางนั้นในแถบที่อยู่เพื่อเข้าถึงC:\ProgramData
  3. หลังจากลบC:\ProgramData\MySQLรีสตาร์ทเครื่องคอมพิวเตอร์ของคุณ
  4. ติดตั้งเซิร์ฟเวอร์ MySQL อีกครั้งและคุณจะไม่มีปัญหาใด ๆ

C:\ProgramData\MySQL\MySQL Server 5.5\data\ib_logfile0.fileปัญหาที่เกิดขึ้นเป็นเพราะไฟล์ เพราะทุกครั้งที่คุณถอนการติดตั้งและติดตั้งโปรแกรมใหม่ข้อมูลจะผนวกเข้ากับไฟล์นี้ มันจะทำให้ไฟล์มีขนาดใหญ่ขึ้น ซึ่งจะส่งผลให้เกิดข้อผิดพลาดใน InnoDB

หากคุณต้องการคุณสามารถลบไฟล์นั้นได้เท่านั้น แต่ฉันต้องการติดตั้งใหม่ทั้งหมดฉันจึงลบทุกอย่าง :-)


0

ฉันเคยมีปัญหานี้มานานแล้ว ฉันไม่ได้แก้ปัญหาการติดตั้งจริง ๆ แต่ฉันทำให้มันทำงานหลังจากนั้น ตัวช่วยสร้างการกำหนดค่าเป็นเพียงการกำหนดค่าจริงๆ การติดตั้งเสร็จสิ้นแล้ว

  1. ตรวจสอบว่ามีการติดตั้งบริการหรือไม่ถ้าไม่ติดตั้งด้วยตนเอง
  2. คุณสามารถปรับรหัสผ่านรูทได้ด้วยตนเอง

บางทีนี่อาจช่วยได้:
http://remy.supertext.ch/2010/05/access-denied-for-user-rootlocalhost/

แจ้งให้เราทราบว่าหน้าตาเป็นอย่างไรฉันแน่ใจว่าเราจะทำให้มันทำงาน :-)


คุณสามารถอธิบายรายละเอียดเกี่ยวกับวิธีการติดตั้งบริการและตั้งรหัสผ่านรูทได้อย่างไร
Thomas Owens

อา. ฉันพลาดส่วนทั้งหมดในลิงก์ของคุณ - ฉันจะลองในวันพรุ่งนี้และแจ้งให้คุณทราบว่ามันจะไปอย่างไร
Thomas Owens

โอเคโชคดี มีแนวโน้มว่าบริการได้รับการติดตั้งแล้ว และดูที่นี่เพียงเพื่อคิดออกว่ากำลังทำงานอยู่เท่าไหร่: dev.mysql.com/doc/refman/5.1/en/windows-server-first-start.html
Remy

0

ฆ่าวิซาร์ดและเริ่มต้น MySQLInstanceConfig.exe อีกครั้งด้วย "Run as Administrator"

exe เป็นตำแหน่งสำหรับการติดตั้งมาตรฐานส่วนใหญ่ภายใต้เซิร์ฟเวอร์ C: \ Program Files \ MySQL \ MySQL XX \ bin


0

ลบการอ้างอิง MySQL จาก c: \ ProgramData ตามที่เก็บการอ้างอิงสำหรับ SQL DB หลังจากลบมันมันอนุญาตให้ฉันติดตั้ง mysql อีกครั้ง

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