Последовательные имена хостов и автоматическое масштабирование?

Есть ли логический способ иметь последовательно пронумерованные имена хостов с серверами, которые автоматически масштабируются, но не уничтожаются последовательно?

Итак, если server13 убит, а server14 / 15 жив, Я настроил его на отправку электронной почты мне, когда появится обновление программного обеспечения, и сегодня утром я получил уведомление о 6 ...

Я запускаю сервер Debian 6 и использую его для размещения дюжины веб-сайтов на основе LAMP. Я настроил его на отправку электронной почты мне всякий раз, когда становится доступно обновление программного обеспечения, и сегодня утром я получил уведомление о 6 новых доступных обновлениях, связанных с mySql:

mysql-server, mysql-client, mysql-common

и несколькими другими зависимости. Я попытался запустить

apt-get update apt-get upgrade

, и все прошло нормально, пока процесс обновления не встретил mysql-client. Я получаю следующую ошибку:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages will be upgraded:
   mysql-client-5.5
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 0 B/1,772 kB of archives.
After this operation, 7,049 kB of additional disk space will be used.
Do you want to continue [Y/n]? Y

Reading changelogs... Done

(Reading database ... 84121 files and directories currently installed.)
Preparing to replace mysql-client-5.5 5.5.38-1~dotdeb.0 (using .../mysql-client-5.5_5.5.46-0+deb6u1_amd64.deb) ...

Unpacking replacement mysql-client-5.5 ...
dpkg: error processing /var/cache/apt/archives/mysql-client-5.5_5.5.46-0+deb6u1_amd64.deb (--unpack):

 trying to overwrite '/usr/share/man/man1/mysql.1.gz', which is also in package mysql-client-core-5.5 5.5.38-1~dotdeb.0
configured to not write apport reports
                                  dpkg-deb: subprocess paste killed by signal (Broken pipe)

Processing triggers for man-db ...

Errors were encountered while processing:

 /var/cache/apt/archives/mysql-client-5.5_5.5.46-0+deb6u1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Я недостаточно опытен, чтобы полностью понять, что произошло. Я попытался запустить apt-get -f install, как было предложено в сообщении, но ничего не произошло. Я также пытался удалить mysql-client (идея была в том, «Я удаляю этот, а затем переустанавливаю его с нуля»), но эта операция не удалась с той же ошибкой. Я попытался очистить mysql, но система также не смогла завершить эту операцию.

На данный момент я перезапустил службу, и сейчас все работает, но проблема с этим неудачным обновлением сохраняется.

] Вот список всех пакетов, связанных с mysql, которые я установил на свой сервер:

~# dpkg -l | grep -i mysql
ii  libdbd-mysql-perl                     4.016-1                      Perl5 database interface to the MySQL database
ii  libmysqlclient16                      5.1.73-1+deb6u1              MySQL     database client library
ii  mysql-client                          5.5.46-0+deb6u1              MySQL database client (metapackage depending on the latest version)
ii  mysql-client-5.5                      5.5.38-1~dotdeb.0            MySQL database client binaries
ii  mysql-client-core-5.5                 5.5.38-1~dotdeb.0            MySQL database core client binaries
ii  mysql-common                          5.5.38-1~dotdeb.0            MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-common-5.5                      5.5.46-0+deb6u1              MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-server                          5.5.46-0+deb6u1              MySQL database server (metapackage depending on the latest version)
rc  mysql-server-5.1                      5.1.73-1+deb6u1              MySQL database server binaries and system database setup
iU  mysql-server-5.5                      5.5.46-0+deb6u1              MySQL database server binaries and system database setup
ii  mysql-server-core-5.5                 5.5.46-0+deb6u1              MySQL database server binaries
ii  php5-mysql                            5.4.45-1~dotdeb+6.1          MySQL module for php5
rc  php5-mysqlnd                          5.4.45-1~dotdeb+6.1          MySQL module for php5 (Native Driver)
ii  phpmyadmin                            4:3.3.7-10                   MySQL web administration tool

Добавление результата apt-get remove

~# apt-get remove mysql-server-5.5
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 mysql-server : Depends: mysql-server-5.1 but it is not going to be installed or
                         mysql-server-5.5 but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Может ли кто-нибудь помочь мне понять, как это исправить? Заранее спасибо, Simone

1
задан 21 December 2015 в 11:32
2 ответа

Как объяснил @M Somerville, существует конфликт между пакетами, ранее установленными репозиторием dotdeb, который вы используете, и официальным репозиторием debian, который теперь содержит более новую версию mysql 5.5.

Что вам нужно сделать, так это полностью удалить mysql 5.5, а затем установить последнюю версию, доступную в ваших репозиториях.

Это решило проблему для меня без потери данных / конфигурации:

apt-get remove mysql-client-5.5 mysql-client-core-5.5 mysql-client mysql-server-5.5 mysql-server

Затем

apt-get install mysql-client mysql-server

В любом случае я не могу не подчеркнуть важность резервного копирования, прежде чем попробовать это.

Удачи

6
ответ дан 3 December 2019 в 16:33

9 декабря Debian перенес MySQL 5.5.46 в squeeze-lts. Судя по тому, что вы говорите, похоже, что вы использовали репозиторий dotdeb, а также репозиторий Debian, а dotdeb содержит MySQL 5.5.38. Итак, теперь squeeze-lts содержит более поздний пакет для установленного вами пакета и пытается его установить. Но два репозитория, похоже, не согласны с именами пакетов / конфликтами / зависимостями, и поэтому обновление mysql-client-5.5 (присутствует в обоих репозиториях) конфликтует из-за пакета dotdeb mysql-client-core-5.5, который squeeze-lts ничего не знает (так что комментарий от wurtel не поможет, так как обновлять нечего).

В общем, я бы никогда не запустил принудительную установку, даже если что-то подсказывает, что вы должны это делать :) Если вас устраивает 5.5 .46 из squeeze-lts, тогда я предлагаю вам попробовать удалить любые пакеты версии 5.5.38, например mysql-client-core-5.5, а не mysql-client, затем mysql-client-5.5, затем mysql-common - надеюсь, это будет возможно без конфликтов, хотя я не уверен, извините. Если это сработает, то ваша идея удаления и чтения действительно звучит неплохо, чтобы убедиться, что все установлено правильно.

Это может все повториться снова, если dotdeb обновит свой репозиторий до более поздней версии, чем squeeze-lts, в общем, я бы посоветовал, если вы получаете что-то из стороннего репозитория, такого как dotdeb, закреплять пакеты оттуда, чтобы они не были отменены изменениями в основном репозитории.

1
ответ дан 3 December 2019 в 16:33

Теги

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