Win7 x64 üzerine MySQL kurmaya çalışırken “Hata 1067: İşlem beklenmedik şekilde sonlandırıldı” [kapandı]


14

MySQL v5.5'i makineme kurmaya çalışırken bir tuğla duvara girdim.

Bilgisayarım Windows 7 x64, Enterprise sürümüdür.

MySQL iyi yüklenir, ancak "MySQL Örnek Yapılandırma Sihirbazı" nı çalıştırdığımda, "Hizmeti Başlat" adımında sonsuza kadar duraklar (30 dakika boyunca yanıt vermeden çalışmasına izin verebilirim). Hizmetlere girersem, "MySQL" hizmetinin başlatılmadığını görürsem ve başlatmayı denersem, "Windows Yerel Bilgisayarda MySQL Hizmetini başlatamadı. Hata 1067: İşlem beklenmedik şekilde sonlandırıldı."

Aşağıdakileri denedim:

  • Güvenlik duvarını kapatma.
  • Tüm virüsten koruma yazılımlarını kaldırma.
  • MySQL'in 32 bit sürümünü yükleme / yeniden yükleme.
  • MySQL'in 64 bit sürümünü yükleme / yeniden yükleme.
  • "C: \ program files \ MySQL" ve "C: \ program files (x86) \ MySQL" içeriklerinin silinmesi, silinmesi.
  • MySQL adlı hileli hizmet olup olmadığını kontrol etmek ???? (önceki kurulumdan).
  • 3306 numaralı bağlantı noktasının alternatif bir program tarafından kullanılmadığını denetleme.
  • MySQL'in kullandığı varsayılan bağlantı noktasını değiştirme.
  • "C: \ windows" içindeki "my.ini" ve "my.ini.cnf" öğelerini denetleme (orada hiçbir şey yok, ancak bu bir soruna neden olabilir).
  • MySQL yükleyicisini ve yapılandırma sihirbazını "Yönetici modu" nda çalıştırma.
  • UAC kapatılıyor.
  • Varsayılanlarla yükleme, hiçbir şeyi değiştirmeme.
  • Makinemi yeniden başlatıyorum (şu ana kadar yaklaşık 6 yeniden başlatma).
  • Güvenlik duvarında 3306 numaralı bağlantı noktasını açma (hem TCP hem de UDP, gelen ve giden).
  • MySQL'i tasarlayabilen bir programcının klutz'una küfür, böylece yükleyemezsiniz (sanki yardımcı olur!)

Makinem her şekilde% 100 çalışıyor. InfiniDB (MySQL uyumlu bir veritabanı), Visual Studio 2010, Microsoft SQL Server vb. Gibi% 100 yükler.

Bu sorunu nasıl çözeceğiniz konusunda tavsiyeniz?

ps İşte süreci öldürene kadar 15 dakika boyunca takılı kalan ekran:

alternatif metin

2010-12-20 Güncellemesi

MySQL v5.1'i denedim, işe yaramadı. Şaşırtıcı - "mysqld /?" Veya "mysqld -help" yazarsanız, size herhangi bir yardım sağlamaz. Hizmeti el ile yeniden başlatmayı denerseniz, herhangi bir hata iletisi görüntülemez. Daha fazla yararsız olabilir mi?

2010-12-21 Güncellemesi

MySQL 6.0 alfa yükledi ve işe yaradı. Ancak, "kararlı" sürümün başka bir şey olduğu göz önüne alındığında, alfa sürümü kullanmak istemem:

2010-12-21 Güncellemesi

Windows altında sorun giderme ile ilgili http://dev.mysql.com/doc/refman/5.1/en/windows-trognostic.html bulundu .

Hizmet başlamazsa bir hata günlüğü oluşturabileceğinizi keşfetti - buraya bakın: http://dev.mysql.com/doc/refman/5.1/en/error-log.html

2010-12-21 Güncellemesi

Aha! Bir ipucu. Hatayı gerçekten görmek için "--console" ekleyin:

mysqld --console

Bu döndürür:

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

2010-12-21 Güncellemesi

Şimdi doğru şekilde kuruluyor. Aşağıdaki cevaba bakınız.


Benim durumumda, "my.ini" dosyasının kötü yapılandırılmış yolları vardı. Umarım başka birine yardımcı olur.
scepeda

Yanıtlar:


11

Sorunu şu şekilde çözdüm:

Adım 1: Varsayılan olarak, hizmetin başlatılamamasının nedenini bulmak imkansızdır. Bu nedenle, hizmet dışı modda başlamasını ve hataları konsolda iletmesini söyleyin:

mysqld --console

Adım 2: Benim özel durumumda, içeriğini silmek zorunda kaldım:

C:\ProgramData\MySQL

... sonra tekrar yükleyin. MySQL v5.5 yükleyicisinin bir hatası var: Kötü bir kurulumla ilgili bir sorunu düzeltmek için MySQL v5.5'i kaldırırsanız, C: \ ProgramData \ MySQL temizlenemez, yani MySQL v5.5'i yüklemenin imkansız olduğu anlamına gelir. o makine, o andan itibaren, bu hileli dizini silmeden.

İpuçları:

  • İşlem izleyicide "mysqld" örneğini öldürdüğünüzden emin olun.
  • Varolan hizmetleri kaldırmak için "sc delete MYSQLxx" kullanın.

Oracle'daki MySQL geliştirme ekibine açık mektup:

--- Oracle'a açık mektubu başlat ---

Sayın MySQL geliştirici ekibi Oracle'da:

MySQL kurulduğunda, hizmet başlatılamazsa, lütfen neden (a) bizi hata günlüğü yönünde göstererek veya (b) bu ​​hata günlüğünü görüntüleyerek bize bildirin.

Aksi takdirde Oracle yetersiz bir ışık alır.

Saygılarımla,

MySQL'i Windows'a yükleyen herkes.

--- Oracle'a açık mektubu bitir ---


3

Gravitas ile aynı fikirdeyim ancak yeniden kurulum yapmanıza gerek yok (özellikle MySQL
Server xx'i C: / Program Files / içindeki varsayılandan farklı bir klasöre yüklerken ).
Bu adımlar hizmeti başarıyla çalıştırmama yardımcı oldu. Win7 x64'te çalıştım, bu yüzden x32'nin iyi olacağını varsayıyorum :)

MySQL Server xx'in kurulu olduğu 'my.ini' dosyasını açın (benimki 5.5 idi, ancak 5.1 de iyi)
Yazdığı satıra gidin:

datadir=C:/ProgramData/MySQL/MySQL Server x.x/data-> (Bu varsayılan yoldur)
Yukarıdaki satırı şu şekilde değiştirin:
datadir="<Drive_Letter>:/path/where/MySQL/is/installed/MySQL Server x.x/data/"

Tüm içeriğini kopyalayın C:/ProgramData/MySQL/MySQL Server x.x/yeni atanan datadir için
HARİÇ ib_logfile0 & ib_logfile1(yedek olarak başka bir yere taşınmaya).
Sil C:/ProgramData/MySQL/MySQL Server x.x/.
Tekrar çalıştırın MySQLInstanceConfig. Güvenlik ayarlarını
kontrol edin TCP/IP networkingama DEĞİŞTİRMEYİN (değiştirmeden bırakın).
Hizmeti başlat ( ib_logfile(1,2)yeniden oluşturulacak).

PS: CCleaner ile geçici dosyaları (yeniden başlattıktan sonra) yeniden başlatın ve temizleyin. Bazı (garip?) Nedenlerden dolayı, yeniden başlatma işlemine kadar yukarıdaki ayarları uyguladıktan sonra bir IDE veya MySQL Workbench CE xx'ten MySQL DBMS'ye bağlanamazsınız.

NOT: Güvenlik ayarlarını düzenlemek,
TCP / IP'yi diğer ayarlarla etkinleştirirken ortaya çıkan başka bir hata nedeniyle yapılandırma yardımcı programının askıda kalmasına neden olur .

Bu yardımcı olur umarım!


2

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

kontrol edin ve yukarıdaki bağlantıyı takip edin - benim durumumda olduğu gibi çözülmelidir.

umarım yardımcı olur


Üzgünüz, bu sorunu çözmedi. Hatta uzun dosya adlarının bir şeyleri değiştirmediğinden emin olmak için C: \ MYSQL55 \ 'de yeniden yüklemeyi denedim, makinemi yeniden başlattım, vb. x64?
Contango

2

Rigatum'un yayınladığı web sitesinden alıntı:

MySQL'i kurarken, standart olmayan bir dizine kurarsanız, MySQL'i çalıştırmadan veya MySQL servisini kurmadan önce varsayılan dosyanızın yolunun nerede olduğunu belirtmeniz gerekir, aksi takdirde Hata 1067 alırsınız.

Önce komut istemini açalım. MySQL kurulum klasörünüze gidin ve mysqld.exe'nin nerede olduğunu bulun. Sonra şunu çalıştırın:

mysqld –remove MySql

Bu MySQL hizmetini kaldıracaktır. Şimdi hizmeti defaultults-file parametresiyle yeniden yükleyin:

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

Örneğin:

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

Hatasız MySQL kurulumunuzun keyfini çıkarın.


Üzgünüz, bu sorunu çözmedi. Hatta uzun dosya adlarının bir şeyleri değiştirmediğinden, makinemi yeniden başlattığımdan emin olmak için C: \ MYSQL55 \ 'e yeniden yüklemeyi denedim. x64?
Contango

1
hayır onun düz değil kırık hiç, i işte 65 dev windows 7 makinelerde, 18 sunucuları (hem nix hem de windows 2008R2) ve benim ev bilgisayarları Windows 2008 ve yedi karışımı üzerinde kusursuz çalışma var. Bence düzgün bir şey kaldırmıyor ve bu yüzden bir noktada takılıp kalıyor - bana oldu ama bu bir süre önce oldu. Kaldırdım, tüm mysql dizinlerini el ile sildim ve servis örneğini de pencerelerden sildim.
rihatum

2

Ve sadece ekliyorum - sadece programdata \ mysql bu durumda değil, aynı zamanda innoDB klasörü de silinmelidir: \ mysql datafiles


2

Kayıt için 5.5.20, yüklemek için birkaç saat denedim Windows 2008 64bit. Asla başlamazdı. Düzeltmek için bulabildiğim her örneği denedim. Buraya kabul edilen cevabı da dahil. Hiç çalışmadı.

Bu yüzden indirdim 5.1.61ve şampiyon gibi çalıştı. İlk kez.


2

Yaptığım şey

  1. Arka plan programı çalışmıyorken, Program Data \ MySQL altındaki veri klasörünü başka bir şeye yeniden adlandırıyorum.
  2. MySQL'i Denetim Masası'ndan kaldırma
  3. Yeniden yükleyin. Güvenlik ayarları yapılandırılırken # 1045 hatasıyla başarısız oluyor. MySQL'in bir hizmet olarak kurulduğunu ve kök şifresinin boş olduğunu kontrol ettim. Bunu kullanıcı adı olmadan mysql yardımcı programını çalıştırarak doğruladım. Yeniden denemeniz veya atlamanız istendiğinde, geçerli kök parolayı ve yeni parolayı belirttiğiniz iletişim kutusuna kadar atla ve geri düğmesini tıklattım. Zaten boş olan ve yeni kök şifremi verdiği için geçerli kök şifre alanındaki şifreyi kaldırıyorum. Yapılandırma başka hata olmadan devam etti
  4. Hizmeti durdurun
  5. Yeniden adlandırılan eski veri klasöründen veritabanı klasörlerini kopyalayın. Günlük dosyalarını ve ibdata dosyasını kopyalamadı.
  6. Klasörleri geçerli (yeni) veri klasörüne yapıştırın.
  7. Hizmet yeniden başlatıldı
  8. Mysql yardımcı programı, veritabanının gösterilip gösterilmeyeceğini görmek için test edin.

BTW, her durumda mysqldump - all-database ile veritabanı dökümü :)


2

Benim innodb_flush_method=normaliçin my.iniişe mantıklı eklemek . Veritabanlarını 3 TB HDD'ye taşıyarak MySQL 5.7 çalıştıran Windows 7 x64 kullanıyorum. Hızlı bir izlenecek yol:

  1. Windows komut isteminde hizmeti aşağıdakilerle durdurun: net stop sqlXX
  2. dataKomut ile klasörü kopyalaxcopy "C:\ProgramData\MySQL\MySQL Server X.X\data" "<new_directory>\data" /s
  3. In "<new_directory>\data"silme ib_logfile0veib_logfile1
  4. Açın C:ProgramData\MySQL\MySQL Server X.X\my.ini, ayarlayın datadir="<new directory>/data", innodb_flush_method=normaldosyanın altına ekleyin ve kaydedin
  5. Hizmeti komutla yeniden başlatın net start mysqlXX

Burada XX sürüm numaranız. 5.7 kullanıyorum, bu yüzden kullandım net start mysql57.

Bağlantılı tartışmaya göre, bunun varsayılan değeri innodb_flush_method=unbuffered, <2 TB HDD'ler için normal olan 512 bayt sektör boyutuna bağlıdır. HDD> 2 TB ise, genellikle 4096 bayt sektörlerle biçimlendirilir ve 1067 hatasına neden olur.

Yukarıdakilerin hepsini de denedim ve çözen tek şey bu.

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

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.