ошибка обработки пакета mysql-community-server во время обновления apt-get

Как вы можете видеть объяснение в здесь,

Вы не можете иметь файл и папку с одинаковым именем, потому что каталоги - это просто специальный вид файлов

Что я предлагаю, так это переименовать > создать > переместить с проверкой команд && между ними

например

mv 123 123_tmp && mkdir 123 && mv 123_tmp 123/

Вы можете использовать абсолютные пути

3
02.09.2017, 01:02
9 ответов

Ошибки указывают на то, что вы должны были попытаться установить mysql-сервер, но что-то пошло не так. Проблема возникла при настройке пакета mysql-community-server. Вы можете попробовать запустить:

dpkg --configure mysql-community-server

или:

dpkg-reconfigure mysql-community-server

Если вы больше не хотите использовать mysql-server, вы можете запустить:

apt-get remove mysql-community-server mysql-server

Чтобы полностью удалить эти пакеты из вашей системы. Это должно решить проблему.

0
27.01.2020, 21:12

Я сам столкнулся с этим в Ubuntu 16.04 LTS (xenial).Ваш журнал MySQL, вероятно, также содержит ошибки mysql_upgrade: Получил ошибку: 2002: Не удается подключиться к локальному серверу MySQL через сокет '/var/run/mysqld/mysqld.sock' (2) при подключении к серверу MySQL В процессе обновления произошла ошибка, и он не будет продолжен. .

Вот что я делал, чтобы обойти эту проблему (я еще не отладил настоящую проблему, почему соединение не работает). Это работало через последние 3 обновления MySQL.

Во-первых, как пользователь root с работающим MySQL:

# mysql_upgrade --defaults-file=/etc/mysql/debian.cnf

Это должно завершиться без ошибок.

Затем отредактируйте файл /var/lib/dpkg/info/mysql-server-5.7.postinst. Где-то в строке 320 найдите и прокомментируйте строку:

mysql_upgrade --defaults-file=/etc/mysql/debian.cnf || result=$?

Выйдите и сохраните файл. Запустите apt-get upgradeеще раз, и он должен работать без ошибок.

1
27.01.2020, 21:12

Похоже, повторный запуск сервера ()из скрипта postinst не удался. Это может иметь разные причины, часто служба все еще работает (, например. потому что на самом деле действие остановки перед ошибкой ), но возможно, что mysql не может запуститься из-за какой-то проблемы.

Попробуйте запустить /etc/init.d/mysql stop;/etc/init.d/mysql start;и посмотрите, нет ли ошибок. Если mysql не останавливается правильно, вы можете попытаться убить его с помощью killall.

Если проблема исправлена, запустите dpkg --configure -a, чтобы настроить все пакеты, которые были задержаны при сбое скрипта postinst.

Другой хак заключается в том, чтобы найти скрипт postinst в /var/lib/dpkgи поместить exit 0после строки #!/bin/sh, затем запустить dpkg --configure -aи затем удалить строку. Имейте в виду, что любые (возможно важные )части сценария postinst не выполняются.

0
27.01.2020, 21:12

Что касается вашего обновленного вопроса, во-первых, я вижу в вашем sources.list некоторые излишества. Например, у вас есть эта ошибка в вашем выводе:

W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:1 and /etc/apt/sources.list:6

И у вас есть это в строке 1 в вашем исходном файле

deb http://it.archive.ubuntu.com/ubuntu precise main restricted

который дублируется в строке 6.

Чтобы исправить эти ошибки, я предлагаю вам удалить все повторяющиеся строки, указанные в выводе. (Их много!)

Во-вторых, есть такая ошибка:

W: GPG error: http://extras.ubuntu.com/ubuntu precise Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 16126D3A3E5C1192

Чтобы исправить эту ошибку GNU Privacy Guard, давайте получим этот ключ. Запустите это:

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16126D3A3E5C1192

Затем исправьте сломанные зависимости, запустив dpkg --configure -aилиapt-get install -f(или оба ).

и еще раз:

apt-get clean && apt-get update
1
27.01.2020, 21:12

Похоже, что установка была прервана в предыдущем сеансе.

Попробуйте sudo apt-get install -f, чтобы увидеть, исправит ли это сломанные зависимости.

Если это не поможет, очистите сервер MySQL:

sudo apt-get purge mysql-server mysql-community-server

Затем очистить и обновить:

sudo apt-get autoclean && sudo apt-get clean && sudo apt-get update

Сделать общий апгрейд:

sudo apt-get upgrade

Теперь попробуйте повторно -установить:

sudo apt-get install mysql-server and mysql-community-server

Если вы делаете это из командной строки root, вы не ведете ведущую команду sudo.

9
27.01.2020, 21:12

ЧТОБЫ УДАЛИТЬ MYSQL с ошибками и УСТАНОВИТЬ MYSQL -> Workbench работает хорошо:

Общее время поиска этого решения = 1 час 40 минут на всех форумах (также с исходного сайта mysql && с китайских форумов)


1 )Прежде всего

sudo rm /var/lib/mysql/ -R
sudo rm /etc/mysql/ -R

sudo apt-get autoremove mysql* --purge
sudo apt-get remove apparmor

sudo apt-get install mysql-server mysql-common

sudo mysql -u root -p

mysql> quit

2 )Следуйте инструкциям из этого руководства Как установить MySQL 8.0 на Ubuntu 18.04



3 )Следуйте инструкциям из этого руководства Краткое руководство по использованию репозитория MySQL APT

- INSTEAD OF "libmysqlclient18" USE "libmysqlclient21"

- FINISH ON COMMAND "apt-get source -b mysql-server"

    - CONTINUE STEP 4


4 )ПО Ubuntu (программная платформа )Ubuntu 18.04

- Search "mysql" or "workbench" and find "MySQL Workbench"
- install


5 )Удаление sudo... = ИЗБЕЖАНИЕ ОШИБОК при загрузке баз данных

5.1. sudo mysql -u root -p

5.2. mysql> use mysql;

5.3. mysql> select user, host, plugin from mysql.user;

5.4. mysql> create user 'gabriel'@'localhost' identified by 'gabriel';

5.5. mysql> grant all privileges on *.* to 'gabriel'@'localhost';   

// **all privileges on *asterisk* dot *asterisk** (idk why but it doesn't allow * asterisk) 

5.6. mysql> update user set plugin="auth_socket" where User='gabriel';

5.7. mysql> flush privileges;

5.8. mysql> exit

5.9. sudo service mysql restart

5.10. mysql -u gabriel -p

5.11. mysql> show databases;

5.12. mysql> quit

Запустите «MySQL Workbench» и, когда он запросит пароль, нажмите «Сохранить» в «связке ключей» и нажмите «Ввод», не вводя пароль.

Готово.:)


Дополнительно:(для добавления новых баз данных):

     (from new db)

В папке "employees _db" (или что там может быть )выполните команду:

mysql -u root -p -t < employees.sql
0
27.01.2020, 21:12

У меня была эта проблема с сервером с 512 МБ ОЗУ. Такой проблемы не было после того, как я обновил до 1 ГБ ОЗУ.

-1
27.01.2020, 21:12

В Ubuntu 16.04 мне помогло включение mysql.serviceдо sudo apt-get updateи sudo apt-get upgrade. Это потому, что обычно mysql.serviceотключен.

Т.е. Я сделал следующее:

sudo systemctl enable mysql.service
sudo apt-get update
sudo apt-get upgrade

Выполнение описанных выше шагов (в указанном порядке )позволило моей системе успешно обновиться.

Если вы не хотите, чтобы служба mysql оставалась включенной после перезагрузки, также выполните

sudo systemctl disable mysql.service
0
04.02.2021, 19:30

вы можете очистить все и переустановить

Прежде всего, сделайте резервную копию вашей полезной базы данных

очистить все сделать это

1 -базовая проверка СУБД:

dpkg -l | grep -e mysql-server -e mariadb-server

сделать эту лабораторную

убить весь процесс mysql

sudo service mysql stop 
sudo killall -9 mysql 
sudo killall -9 mysqld


sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-5.7 mysql-client-core-5.7  
            
sudo apt-get remove --purge mysql* 
sudo apt-get purge mysql*
sudo apt-get remove dbconfig-mysql 

sudo apt-get autoremove
sudo apt-get autoclean

удалить старые файлы mysql

sudo rm -rf /etc/mysql /var/lib/mysql
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql

обновление

sudo apt-get dist-upgrade -y
sudo apt update

, затем переустановите

sudo apt-get install mysql-server and mysql-community-server
0
05.03.2021, 23:17

Теги

Похожие вопросы