"Kesalahan 1067: Proses dihentikan tiba-tiba" ketika mencoba menginstal MySQL di Win7 x64 [ditutup]

14

Saya mengalami dinding bata yang mencoba menginstal MySQL v5.5 di komputer saya.

PC saya adalah Windows 7 x64, edisi Enterprise.

MySQL menginstal dengan baik, tetapi ketika saya menjalankan "MySQL Instance Configuration Wizard", itu berhenti selamanya pada langkah "Mulai Layanan" (Saya bisa membiarkannya berjalan selama 30 menit tanpa jawaban). Jika saya masuk ke layanan, saya melihat bahwa layanan "MySQL" belum dimulai, dan jika saya mencoba untuk memulainya, dikatakan "Windows tidak dapat memulai Layanan MySQL di Komputer Lokal. Kesalahan 1067: Proses dihentikan secara tak terduga."

Saya sudah mencoba yang berikut ini:

  • Mematikan firewall.
  • Menghapus instalasi semua perangkat lunak antivirus.
  • Menginstal / menginstal ulang versi 32-bit MySQL.
  • Menginstal / menginstal ulang versi 64-bit MySQL.
  • Menghapus instalasi, menghapus konten "C: \ program files \ MySQL" dan "C: \ program file (x86) \ MySQL", menginstal ulang.
  • Memeriksa untuk melihat bahwa tidak ada layanan jahat bernama MySQL ???? (dari instalasi sebelumnya).
  • Memeriksa bahwa port 3306 tidak digunakan oleh program alternatif.
  • Mengubah port default yang digunakan MySQL.
  • Memeriksa "my.ini" dan "my.ini.cnf" di "C: \ windows" (tidak ada yang bisa menyebabkan masalah).
  • Menjalankan penginstal MySQL, dan wisaya konfigurasi, dalam "mode Adminstrator".
  • Mematikan UAC.
  • Menginstal dengan default, tidak mengubah apa pun.
  • Reboot mesin saya (sekitar 6 reboot sejauh ini).
  • Membuka port 3306 di firewall (baik TCP dan UDP, inbound dan outbound).
  • Bersumpah di klutz seorang programmer yang mendesain MySQL sehingga Anda bahkan tidak dapat menginstalnya (seolah-olah itu akan membantu!)

Mesin saya bekerja 100% dengan segala cara. InfiniDB (database yang kompatibel dengan MySQL) menginstal 100%, seperti halnya Visual Studio 2010, Microsoft SQL Server, dll, dll.

Saran Anda tentang cara mengatasi ini?

ps Ini layar yang macet selama 15 menit sampai saya menghentikan proses:

teks alternatif

Pembaruan 2010-12-20

Mencoba MySQL v5.1, tidak berhasil juga. Luar biasa - jika Anda mengetik "mysqld /?", Atau "mysqld -help", itu tidak memberi Anda bantuan. Dan, jika Anda mencoba me-restart layanan secara manual, itu tidak menampilkan pesan kesalahan. Mungkinkah itu lebih tidak membantu?

Pembaruan 2010-12-21

Menginstal MySQL 6.0 alpha, dan berhasil. Namun, saya lebih suka tidak menggunakan rilis alpha, mengingat bahwa rilis "stable" sama sekali tidak :(

Pembaruan 2010-12-21

Ditemukan http://dev.mysql.com/doc/refman/5.1/en/windows-troubleshooting.html , berurusan dengan pemecahan masalah di Windows.

Ditemukan bahwa Anda dapat membuat log kesalahan jika layanan tidak dimulai - lihat di sini: http://dev.mysql.com/doc/refman/5.1/en/error-log.html

Pembaruan 2010-12-21

Aha! Sebuah petunjuk. Untuk benar-benar melihat kesalahan, tambahkan "--console":

mysqld --console

Ini mengembalikan:

101221 13:57:28 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use Windows interlocked functions
InnoDB: Compressed tables use zlib 1.2.3
101221 13:57:28  InnoDB: Initializing buffer pool, size = 203.0M
101221 13:57:28  InnoDB: Completed initialization of buffer pool
InnoDB: Error: log file .\ib_logfile0 is of different size 0 56623104 bytes
InnoDB: than specified in the .cnf file 0 106954752 bytes!
101221 13:57:28 [ERROR] Plugin 'InnoDB' init function returned error.
101221 13:57:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
101221 13:57:28 [ERROR] Unknown/unsupported storage engine: INNODB
101221 13:57:28 [ERROR] Aborting
101221 13:57:28 [Note] mysqld: Shutdown complete

Pembaruan 2010-12-21

Sekarang menginstal dengan benar. Lihat jawabannya di bawah.

Contango
sumber
Dalam kasus saya, file "my.ini" memiliki jalur konfigurasi yang buruk. Semoga ini bisa membantu orang lain.
scepeda

Jawaban:

11

Inilah cara saya memperbaiki masalah:

Langkah 1: Secara default, tidak mungkin untuk mengetahui alasan mengapa layanan gagal untuk memulai. Jadi, katakan untuk memulai dalam mode non-layanan, dan pipa kesalahan ke konsol:

mysqld --console

Langkah 2: Dalam kasus khusus saya, saya harus menghapus konten:

C:\ProgramData\MySQL

... lalu instal ulang. Pemasang MySQL v5.5 memiliki bug: jika Anda menghapus instalasi MySQL v5.5 untuk memperbaiki masalah dengan instalasi yang buruk, ia gagal membersihkan C: \ ProgramData \ MySQL, artinya tidak mungkin menginstal MySQL v5.5 pada mesin itu, sejak saat itu, tanpa menghapus direktori jahat ini.

Petunjuk:

  • Pastikan Anda membunuh instance "mysqld" di monitor proses.
  • Untuk menghapus layanan apa pun yang ada, gunakan "sc delete MYSQLxx".

Buka surat ke tim pengembangan MySQL di Oracle:

--- mulai buka surat ke Oracle ---

Tim pengembang MySQL yang terhormat di Oracle:

Jika, ketika MySQL diinstal, layanan gagal untuk memulai, beri tahu kami alasannya dengan (a) mengarahkan kami ke arah log kesalahan atau (b) menampilkan log kesalahan ini.

Kegagalan untuk melakukannya melemparkan Oracle dalam cahaya yang tidak kompeten.

Dengan hormat,

Semua orang yang menginstal MySQL di Windows.

--- akhiri surat terbuka ke Oracle ---

Contango
sumber
3

Saya setuju dengan Gravitas tetapi Anda tidak perlu menginstal ulang (terutama ketika menginstal MySQL
Server xx di folder yang berbeda selain dari default di C: / Program Files /).
Langkah-langkah ini membantu saya menjalankan layanan dengan sukses. Bekerja di Win7 x64 jadi saya menganggap x32 akan baik-baik saja :)

Buka file 'my.ini' di mana MySQL Server xx diinstal (milik saya adalah 5.5 tetapi 5.1 juga OK)
Pergi ke baris di mana ia mengatakan:

datadir=C:/ProgramData/MySQL/MySQL Server x.x/data-> (Ini adalah jalur default)
Ubah baris di atas dengan sesuatu seperti ini:
datadir="<Drive_Letter>:/path/where/MySQL/is/installed/MySQL Server x.x/data/"

Salin semua konten C:/ProgramData/MySQL/MySQL Server x.x/ke datadir yang baru ditunjuk
KECUALI ib_logfile0 & ib_logfile1(pindahkan mereka di tempat lain sebagai cadangan).
Hapus C:/ProgramData/MySQL/MySQL Server x.x/.
Jalankan kembali MySQLInstanceConfig.
Periksa TCP/IP networkingtetapi JANGAN ubah pengaturan keamanan (biarkan tidak diubah).
Mulai layanan ( ib_logfile(1,2)akan dibuat ulang).

PS: Reboot dan bersihkan file-file sementara - setelah reboot - dengan CCleaner. Untuk beberapa alasan (aneh?), Anda tidak dapat terhubung ke MySQL DBMS dari IDE atau MySQL Workbench CE xx setelah menerapkan pengaturan di atas hingga reboot.

CATATAN: Mengedit pengaturan keamanan akan menyebabkan utilitas konfigurasi hang karena bug lain yang
diperkenalkan saat mengaktifkan TCP / IP dengan pengaturan lain.

Semoga ini membantu!

Kounavi
sumber
2

http://mydailytech.com/post/how-to-fix-mysql-error-1067/

periksa dan ikuti tautan di atas - itu harus diselesaikan seperti dalam kasus saya.

Semoga itu bisa membantu

rihatum
sumber
Maaf, ini tidak menyelesaikan masalah. Saya bahkan mencoba menginstal ulang di C: \ MYSQL55 \ hanya untuk memastikan bahwa nama file lama tidak mengubah hal-hal, me-reboot mesin saya, dll. Saya mulai bertanya-tanya apakah MySQL v5.5 dan sebelumnya hanya rusak di bawah Windows 7 x64?
Contango
2

Dikutip dari situs web yang diposkan rigatum:

Saat memasang MySQL, jika Anda menginstalnya di direktori non-standar, maka Anda harus menentukan di mana jalur file default Anda sebelum Anda dapat menjalankan MySQL atau menginstal layanan MySQL, jika tidak Anda akan mendapatkan Kesalahan 1067.

Pertama mari kita buka command prompt. Arahkan ke folder instal MySQL Anda dan temukan dimanapun mysqld.exe berada. Kemudian jalankan ini:

mysqld –remove MySql

Itu akan menghapus instalasi layanan MySQL. Sekarang instal ulang layanan dengan parameter file default:

mysqld –install <service name> –defaults-file=<full path of “my.ini” file>

Sebagai contoh:

mysqld –install MySql –defaults-file=c:\mysql\my.ini

Nikmati instalasi MySQL bebas kesalahan Anda.

AliGibbs
sumber
Maaf, ini tidak menyelesaikan masalah. Saya bahkan mencoba menginstal ulang di C: \ MYSQL55 \ hanya untuk memastikan bahwa nama file lama tidak mengubah hal-hal, me-reboot mesin saya, dll. Saya mulai bertanya-tanya apakah MySQL v5.5 dan sebelumnya hanya rusak di bawah Windows 7 x64?
Contango
1
tidak ada yang tidak rusak sama sekali, saya telah bekerja dengan sempurna pada 65 dev windows 7 mesin di tempat kerja, 18 server (baik nix dan windows 2008R2), dan di komputer rumah saya campuran windows 2008 dan tujuh. Saya pikir itu tidak mencopot sesuatu dengan benar dan itulah sebabnya macet di beberapa titik - terjadi pada saya tapi itu beberapa waktu yang lalu. Saya telah menghapus, secara manual menghapus semua direktori mysql dan menghapus contoh layanan juga dari windows.
rihatum
2

Dan saya hanya menambahkan - tidak hanya programdata \ mysql harus dihapus dalam kasus ini tetapi juga folder innoDB: \ mysql datafiles

tomas
sumber
2

Sebagai catatan, saya mencoba beberapa jam 5.5.20untuk menginstal Windows 2008 64bit. Itu tidak akan pernah dimulai. Saya mencoba setiap contoh yang dapat saya temukan untuk memperbaikinya. Termasuk jawaban yang diterima di sini. Tidak pernah berhasil.

Jadi saya menurunkannya 5.1.61dan itu berfungsi seperti juara. Pertama kali.

cbmeeks
sumber
2

Apa yang saya lakukan adalah

  1. Dengan daemon tidak berjalan, saya mengubah nama folder data di bawah Program Data \ MySQL ke sesuatu yang lain.
  2. Hapus instalan mysql dari panel kontrol
  3. Instal ulang. Dalam mengonfigurasi pengaturan keamanan gagal dengan kesalahan # 1045. Saya memeriksa bahwa MySQL telah diinstal sebagai layanan dan kata sandi root kosong. Saya memverifikasi ini dengan menjalankan utilitas mysql tanpa nama pengguna. Ketika diminta untuk mencoba lagi atau melewati, saya mengklik lewati dan mengklik tombol kembali hingga dialog tempat Anda menentukan kata sandi root saat ini dan kata sandi baru. Saya menghapus kata sandi di bidang kata sandi root saat ini karena ini sudah kosong dan memberikan kata sandi root baru saya. Konfigurasi berjalan tanpa kesalahan lagi
  4. Hentikan layanan
  5. Salin folder database dari folder data lama yang diubah namanya. Tidak menyalin file log dan file ibdata.
  6. Tempel folder ke folder data saat ini (baru).
  7. Mulai ulang layanan
  8. Tes di utilitas mysql untuk melihat apakah database akan ditampilkan yang mana.

Btw, saya membuang databasenya dengan mysqldump --all-database untuk jaga-jaga :)

jojo mendoza
sumber
2

Menambahkan logis innodb_flush_method=normaluntuk my.inibekerja untuk saya. Saya menggunakan Windows 7 x64 menjalankan MySQL 5.7, memindahkan basis data ke HDD 3TB. Panduan cepat:

  1. Hentikan layanan di command prompt Windows dengan net stop sqlXX
  2. Salin datafolder dengan perintahxcopy "C:\ProgramData\MySQL\MySQL Server X.X\data" "<new_directory>\data" /s
  3. Di "<new_directory>\data"hapus ib_logfile0danib_logfile1
  4. Buka C:ProgramData\MySQL\MySQL Server X.X\my.ini, atur datadir="<new directory>/data", tambahkan innodb_flush_method=normaldi bagian bawah file, dan simpan
  5. Mulai ulang layanan dengan perintah net start mysqlXX

Di sini XX adalah nomor versi Anda. Saya menggunakan 5.7, jadi saya gunakan net start mysql57.

Menurut diskusi tertaut, nilai default untuk ini adalah innodb_flush_method=unbuffered, yang tergantung pada ukuran sektor 512 byte, yang normal untuk <2TB HDD. Jika HDD> 2TB, biasanya akan diformat dengan sektor 4096 byte, menyebabkan kesalahan 1067.

Saya sudah mencoba semua hal di atas juga dan ini adalah satu-satunya hal yang menyelesaikannya.

http://bugs.mysql.com/bug.php?id=28913

dcmorse
sumber