Ubuntu'da MySQL kurarken ve kaldırırken sorun yaşıyor


26

Ubuntu15.04'te kısmen kurulmuş olan mysql-server-5.6'nın kurulumunda veya çıkarılmasında sorun yaşıyorum. Ben alıyorum hata oldu

$ sudo apt-get -f install 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  mysql-server-5.6
The following packages will be upgraded:
  mysql-server-5.6
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
22 not fully installed or removed.
Need to get 0 B/5,501 kB of archives.
After this operation, 50.8 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
Preconfiguring packages ...
Setting up mysql-common (5.6.24-0ubuntu2) ...
update-alternatives: error: alternative path                 /etc/mysql/my.cnf.fallback doesn't exist
dpkg: error processing package mysql-common (--configure):
 subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
 mysql-common
localepurge: Disk space freed in /usr/share/locale: 0 KiB
localepurge: Disk space freed in /usr/share/man: 0 KiB
localepurge: Disk space freed in /usr/share/gnome/help: 0 KiB
localepurge: Disk space freed in /usr/share/omf: 0 KiB
localepurge: Disk space freed in /usr/share/doc/kde/HTML: 0 KiB

Total disk space freed by localepurge: 0 KiB

E: Sub-process /usr/bin/dpkg returned an error code (1)

Biri bana bu konuda yardımcı olabilir mi?


Daha iyi kaldırabilir ve umarım temiz bir yeniden yükleme iyi olacağını düşünüyorum.
— vembutech

Ben hala bu sorunu denedim, yani mysql sunucusunu kaldırmak veya yeniden yüklemek için
— ubable'ım

1
Sorunun nedenini bulmak için seviyemi en iyi şekilde denedim. Veriyi apt durum dosyasından sildim ve apt'yi güncelledim; burada sistemin libgcc1 libc6 ile problem yaşadığını fark ettim. Sorunu çözmeye çalışıyorum Bulunduğum bulgulara dayanarak durumu postalamaya devam edeceğim.
— Shameerariff

Yanıtlar:


55

Bir temizleme işlemi yapmayı deneyin, ardından tekrar yükleyin.

sudo apt-get remove --purge mysql-\*
sudo apt-get install mysql-server mysql-client

Güncelleme 04.09.2018:
MySQL işlemi devam ettiği için kaldırma / yükleme ile ilgili sorunlarınız varsa, önce bunu, sonra da bunu deneyebilirsiniz:
sudo kill $(pgrep mysql)


Ben hala bu sorunu denedim, yani mysql sunucusunu kaldırmak veya yeniden yüklemek için
— ubable'ım

Orijinal talimatlar no-op olan meta paketi kaldırmıştır. Düzenlenen yeni talimatlar 16.04 ile çalışır.
— mrm

Temel işletim sistemlerinde benim için çalıştı.
— MChaker

2
Bu sadece benim için çalıştı ps -aef | grep mysqlve tüm çalışan mysqld çeşitlerine bir öldürme sinyali gönderdikten sonra çalıştı .
— Charney Kaye

12

Benim (linux noob) kazmam gereken çok basit bir çözüm ... dosyayı oluşturmak.

nano /etc/mysql/my.cnf.fallback

ve mysql-common 5.7.11-0ubuntu6 paketindeki varsayılan içerikle doldurun.

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
# 
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.

# Here is entries for some specific programs
# The following values assume you have at least 32M ram

!includedir /etc/mysql/conf.d/

apt-browse.org adresinde burada bulundu


Bu, kabul edilen cevaptan daha iyi bir cevap, çünkü kaba kuvvet yaklaşımını kullanmak zorunda kalmadan asıl sorunu çözüyor.
— devius

Benim durumumda touch /etc/mysql/my.cnf.fallbackkonuyu geçtiniz.
— oalders

9

Temizleme / Yeniden Yükleme de benim için işe yaramadı. Aşağıdaki "çözümü" buldum:

Ben değil bulabildiğim mysql.cnf.fallbackiçin "sağlanan dosyalar" bölümünde listelenen mysql-server-5.6/ ' mysql-client-5.6ne de dosya hakkında herhangi bir ek bilgi.

Ben kopyalanan /etc/mysql/my.cnfiçin /etc/mysql/my.cnf.fallback(bu nispeten daha az önemli "son çare" yapılandırma dosyası olurdu olduğunu tahmin);

/etc/mysql/my.cnfbir sembolik bağlantıdır, ls /etc/mysqlşimdi gösterir:

 my.cnf.fallback -> /etc/alternatives/my.cnf
 my.cnf -> /etc/alternatives/my.cnf

Paketin kurulumu daha sonra hatasız bir şekilde tamamlandı (çünkü muhtemelen "yok" sorunu "çözüldü").

(Henüz) herhangi bir olumsuz etkiye rastlamadım.


Bu kulağa çok hoş geliyor ama sorunun nedenini açıklayabilir misiniz?
— Shameerariff

5

MySQL sunucusunu temizlemeye çalışırken de aynı sorunu yaşadım (5.7.14).

My.cnf * dosyalarının eksik olması durumunda, mysql-common paketini yeniden yükleyebilir ve daha sonra ikisini de temizleyebilirsiniz ( mysql-server & mysql-common )

Bu my.cnf * dosyaları mysql ortak paketine aittir (bkz. Feryat):

$ dpkg -L mysql-common | grep cnf
/etc/mysql/my.cnf.fallback
/etc/mysql/conf.d/mysql.cnf


1. MySQL ortak tekrar yükleyin

apt-get install - yeniden kurulum mysql-ortak

  1. Temizleme mysql-common

apt-get purge mysql-ortak


1

/etc/mysql/Klasörümü kontrol ettim ve boş bir alt klasör dışında tamamen boş buldum conf.d.

cd /etc/
# you need to delete the empty mysql folder otherwise the ln below creates the link inside the existing mysql folder
sudo rm -r mysql
sudo ln -s ./mysql.bak/ mysql

sonra (bu bağlantının izniyle bu bağlantının )

sudo dpkg --configure -a

ve şimdi her şey yolunda görünüyor.

Yukarıdaki bağlantı da bahseder --force-dependsama buna ihtiyacım yoktu. Aynı zamanda bahseder apt-get -f installama yine de ihtiyacım yoktu.


Bu tam olarak benim sorunumdu. Bu benim için düzeltti.
— Dave Kincaid

0

Charneykaye tarafından yorumlarda belirtildiği gibi mysql, arka planda bazı işlemler varsa, bu yaklaşım başarısız olabilir . Kullandım:

emil-mint-desktop ~ # ps -aef | grep mysql
root      6682     1  0 16:45 ?        00:00:00 sudo mysqld_safe --skip-grant-tables
root      6683  6682  0 16:45 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --skip-grant-tables
mysql     7046  6683  0 16:45 ?        00:00:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --skip-grant-tables --log-error=/var/log/mysql/error.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306 --log-syslog=1 --log-syslog-facility=daemon --log-syslog-tag=
root     21046  9812  0 17:32 pts/5    00:00:00 grep --color=auto mysql

İlk 3 işlemi (sonuncusu grepçağrı kendisidir!) Kullanarak öldürdüler:

kill -9 6682 8883 7046

Sonra mysqlilgili her şeyi kaldırın :

apt remove --purge mysql-\*
apt autoremove
apt autoclean

ve sonra yükleyin:

apt install mysql-server

Sonra işe yaradı.

sürümleri:

  • Nane 18.1 (Ubuntu'ya dayanarak). Sen değiştirmeniz gerekecektir aptiçin apt-getdiğer bazı sürümleri için.

0

Bunun için kolay bir çözüm buldum:

İlk adım: apt-get install mysql-common --reinstall

İkinci adım: apt-get install mysql-server --reinstall

Ve çalışıyor!


0

Yukarıdaki tüm cevapları denedikten sonra bu sorunu çözebildim:

sudo rm /etc/rc5.d/S03mysql

Sonra çalıştırmak başardı:

sudo apt temizleme mysql-sunucu mysql-sunucu-5.7 mysql-sunucu-çekirdek-5.7

sudo apt-get -f kurulum mysql-server - düzeltme eksik - düzeltme bozuk

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.