После того, как я изменил репозиторий для Marinadb с 10.2 на 11 и запустил yum, обновите стек сервера при ошибке, не обновляя/удаляя маринадб-сервер.
-bash-# yum -y update
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package MariaDB-server.x86_64 0:10.2.41-1.el7.centos will be updated
---> Package MariaDB-server.x86_64 0:11.0.1-1.el7.centos will be an update
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================================================
Updating:
MariaDB-server x86_64 11.0.1-1.el7.centos mariadb 27 M
Transaction Summary
=============================================================================================================================================================
Upgrade 1 Package
Total download size: 27 M
Downloading packages:
No Presto metadata available for mariadb
MariaDB-server-11.0.1-1.el7.centos.x86_64.rpm | 27 MB 00:02:42
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
******************************************************************
A MySQL or MariaDB server package (MariaDB-server-10.2.41-1.el7.centos.x86_64) is installed.
Upgrading directly from MySQL 10.2 to MariaDB 11.0 may not
be safe in all cases. A manual dump and restore using mysqldump is
recommended. It is important to review the MariaDB manual's Upgrading
section for version-specific incompatibilities.
A manual upgrade is required.
- Ensure that you have a complete, working backup of your data and my.cnf
files
- Shut down the MySQL server cleanly
- Remove the existing MySQL packages. Usually this command will
list the packages you should remove:
rpm -qa | grep -i '^mysql-'
You may choose to use 'rpm --nodeps -ev <package-name>' to remove
the package which contains the mysqlclient shared library. The
library will be reinstalled by the MariaDB-shared package.
- Install the new MariaDB packages supplied by MariaDB Foundation
- Ensure that the MariaDB server is started
- Run the 'mysql_upgrade' program
This is a brief description of the upgrade process. Important details
can be found in the MariaDB manual, in the Upgrading section.
******************************************************************
error: %pre(MariaDB-server-11.0.1-1.el7.centos.x86_64) scriptlet failed, exit status 1
Error in PREIN scriptlet in rpm package MariaDB-server-11.0.1-1.el7.centos.x86_64
MariaDB-server-10.2.41-1.el7.centos.x86_64 was supposed to be removed but is not!
Verifying : MariaDB-server-10.2.41-1.el7.centos.x86_64 1/2
Verifying : MariaDB-server-11.0.1-1.el7.centos.x86_64 2/2
Failed:
MariaDB-server.x86_64 0:10.2.41-1.el7.centos MariaDB-server.x86_64 0:11.0.1-1.el7.centos
Complete!
Когда я пытаюсь удалить старый 10.2, он показывает
-bash-# sudo yum remove MariaDB-server galera
Loaded plugins: fastestmirror
No Match for argument: galera
Resolving Dependencies
--> Running transaction check
---> Package MariaDB-server.x86_64 0:10.2.41-1.el7.centos will be erased
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================================================
Removing:
MariaDB-server x86_64 10.2.41-1.el7.centos @mariadb 117 M
Transaction Summary
=============================================================================================================================================================
Remove 1 Package
Installed size: 117 M
Is this ok [y/N]: y
Downloading packages:
Running transaction check
ERROR with transaction check vs depsolve:
MariaDB-server >= 11.0.0 is needed by (installed) MariaDB-server-compat-11.0.1-1.el7.centos.noarch
** Found 4 pre-existing rpmdb problem(s), 'yum check' output follows:
MariaDB-client-11.0.1-1.el7.centos.x86_64 has installed conflicts MariaDB-server < ('0', '11.0.0', None): MariaDB-server-10.2.41-1.el7.centos.x86_64
MariaDB-common-11.0.1-1.el7.centos.x86_64 has installed conflicts MariaDB-server < ('0', '10.6.1', None): MariaDB-server-10.2.41-1.el7.centos.x86_64
MariaDB-server-10.2.41-1.el7.centos.x86_64 has missing requires of galera
MariaDB-server-compat-11.0.1-1.el7.centos.noarch has missing requires of MariaDB-server >= ('0', '11.0.0', None)
Your transaction was saved, rerun it with:
yum load-transaction /tmp/yum_save_tx.2023-04-10.16-35.Pz_MRr.yumtx
Как я могу завершить установку версии 11 или восстановиться до 10.2 (официальное репо удалено) или удалить 11 и обновить до 10.3 или что-нибудь, чтобы решить проблему.
PS: Следующие команды больше не работают:
-bash-# mysql
mysql: Deprecated program name. It will be removed in a future release, use '/usr/bin/mariadb' instead
ERROR 2002 (HY000): Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (2)
-bash-# mysql_upgrade
-bash: mysql_upgrade: command not found
Моя ОС: CentOS Linux версии 7.9
Я попытался изменить репозиторий marinadb на 10.3, а затем обновить, но это не работает.
текущий статус mysql:
-bash-# systemctl status mariadb.service
* mariadb.service - MariaDB 10.2.41 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
`-migrated-from-my.cnf-settings.conf
Active: failed (Result: exit-code) since 2023-04-10 08:54:36 MSK; 7h ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Process: 11167 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS --basedir=/usr $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=203/EXEC)
Process: 11156 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 11154 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Main PID: 11167 (code=exited, status=203/EXEC)
Помогите пожалуйста :) Не торопитесь, но нужно решить.
Извините, я думаю, что Stackoverflow также работает для подобных проблем. Полезно знать, что следует добавлять только вопросы, связанные с программированием.
Что мне помогает восстановить предыдущую версию:
Удалите Galera точно из журналов выше:
sudo yum удалить galera-4-26.4.14-1.el7.centos.x86_64
Установите актуальную галеру для 10.2.41 из архива:
yum install -y https://archive.mariadb.org/yum/10.2.41/centos7-amd64/rpms/galera-25.3.34-1.el7.centos.x86_64.rpm
удалите пакеты MariaDB 11, указав полные имена пакетов, как показано в журналах выше.
sudo yum удалить MariaDB-server-compat-11.0.1-1.el7.centos.noarch
sudo yum удалить MariaDB-common-11.0.1-1.el7.centos.x86_64
sudo yum удалить MariaDB-client-11.0.1-1.el7.centos.x86_64
Установить обратно 10.2 из архива
yum install -y https://archive.mariadb.org/yum/10.2.41/centos7-amd64/rpms/MariaDB-server-10.2.41-1.el7.centos.x86_64.rpm
Запустить mariadb 10.2
systemctl запустить mariadb
Чтобы обновить до 10.11, выполните следующий процесс: 1) обновите файл /etc/yum.repos.d/marinadb.repo в соответствии с mariadb.org/download/…, затем yum удалите MariaDB-server-10.2.41- 1.el7.centos, затем sudo yum -y update, затем запустите службу marinadb systemctl, запустите mariadb и обновите БД: mysql_upgrade
это не по теме здесь, так как это не вопрос, связанный с программированием ... Вы читали документы mariadb? когда вы меняете версии, вы должны сначала удалить старую. это не обновление на месте, как mysql.