Уставновка mysql-5.0.* в debian/testing при наличии установленного mysql-5.5

Что мы должны получить:
  1. mysql-5.5, который установлен из пакетов продолжает работать и никому не мешает
  2. mysql-5.0, работающий независимо от 5.5
Да, собирать будем из сорцов (деваться некуда). Всё ниженаписанное делается из под root пользователя.

Первым делом ставим нужные для сборки пакеты
aptitude update && aptitude install build-essential unzip
Качаем нужную версию 5.0, я ставил 5.0.51b.
cd /tmp
wget http://downloads.mysql.com/archives/mysql-5.0/mysql-5.0.51b.zip
unzip mysql-5.0.*
cd mysql-5.0.*
Начинаем конфиг и сборку… говорим конфигуратору, что установить всё нужно в /opt/mysql-5.0 (это позволит не засорять систему — для удаления/обновления mysql-5.0 трогаем только /opt/mysql-5.0)
./configure --prefix=/opt/mysql-5.0 --exec-prefix=/opt/mysql-5.0
make &&; make install
Всё, mysql установлен и готов к работе. Но, это ещё не всё. Нужно создать data-dir (для хранения бд), выделить файлы для pid, socket и лога. А ещё конфиг.
cd /opt/mysql-5.0
mkdir data etc run
bin/mysql_install_db --datadir=data --user=mysql # инициируем хранилище БД
chmod a+w run
Конфиг. Обязательно нужно указать где слушать и дать немного ресурсов, иначе наш mysql задохнётся. То, что ниже, пишем в /opt/mysql-5.0/etc/my.cnf
[mysqld]
bind-address = 0.0.0.0 # если не нужны подключения с любых хостов, то ставим 127.0.0.1
key_buffer              = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8
query_cache_limit       = 1M
query_cache_size        = 16M
 Ну вот, собственно, и всё, наш mysql-5.0 полностью готов. Осталось только запустить и сменить пароль от root.
Запускаем:
/opt/mysql-5.0/bin/mysqld_safe --defaults-file=/opt/mysql-5.0/etc/my.cnf --basedir=/opt/mysql-5.0 --datadir=/opt/mysql-5.0/data --user=mysql --pid-file=/opt/mysql-5.0/run/mysqld.pid --socket=/opt/mysql-5.0/run/mysql.sock --port=3307 --log-error=/opt/mysql-5.0/run/error.log &
Объясняю опции запуска, которые мы указали.
 --defaults-file — конфиг, который будет прочитан первым (а в нашем случае единственным)
--basedir — место, куда установлен mysql
--datadir — хранилище БД
--user — пользователь, с правами которого запущен демон mysql
--pid-file — файл, который хранит идентификатор запущенного процесса (нужен для остановки mysql и т.д.)
--socket — куда класть socket для подключений через него
--port — какой порт слушать для tcp подключений
--log-error — куда класть лог работы
Идём проверим что там в логе…
tail -f /opt/mysql-5.0/run/error.log
 Если всё в порядке, то видим что-то наподобие следующего
130321 22:20:53  mysqld started
nohup: ignoring input
130321 22:20:53  InnoDB: Started; log sequence number 0 1183112176
130321 22:20:53 [Note] /opt/mysql-5.0/libexec/mysqld: ready for connections.
Version: '5.0.51b'  socket: '/opt/mysql-5.0/run/mysql.sock'  port: 3307  Source distribution
Самое время пойти поменять пароль от root
bin/mysqladmin --socket=/opt/mysql-5.0/run/mysql.sock -u root password 'ваш новый пароль в одинарных кавычках'
 Вот и всё. Чуть не забыл — для остановки сервера mysql используем следующую команду:
kill `cat /opt/mysql-5.0/run/mysqld.pid`

Комментариев нет:

Отправить комментарий