Установка MYSQL нужной версии из исходных кодов

Форум предназначен для новичков. В нем предполагается рассматривать вопросы, которые встают на первых этапах освоения Linux
HowTo
Заглянувший
Сообщения: 7
Зарегистрирован: 08 авг 2011, 15:04

Установка MYSQL нужной версии из исходных кодов

Сообщение HowTo »

Добрый день!
Я линукс до этого случая не видел, потому, попрошу лояльно отнестись к некоторым вещам.
Мне нужно поднять MySQL сервер конкретной версии mysql-5.0.67 на старенькой дохлой машинке
Я скачал и установил debian-6.0.1a-i386-businesscard.iso (48 МБ)
Попробовал сделать apt-get install mysql-server. При этом установилась версия 5.1.49-3
Я удалил ее и попробовал скачать исходники отсюда:http://www.mysql.ru/cgi-bin/download/mysql-5.0.67.tar.gz
в архиве есть папка DOCS и в ней файл INSTALL-BINARY
там написано следующее:

Код: Выделить всё

The basic commands that you must execute to install and use a
   MySQL binary distribution are:
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> cd /usr/local
shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
shell> bin/mysqld_safe --user=mysql &

Я попытался проделать эти действия. На шаге shell> scripts/mysql_install_db --user=mysql столкнулся спроблемой:
1) у меня скрипт называется scripts/mysql_install_db.sh
2) он не исполняемый (я сделал chmod)
3) после этих действий он сказал, что у меня нет @bindir@/print_to_чего-то там не помню

Кроме того в том же INSTALL-BINARY написано, что особо важными являются папки, среди которых "bin". У меня в архиве вообще нет такой папки.

порывшись в инете я нашел другую инструкцию:
http://www.mysql.ru/docs/man/Quick_install.html
там написано:

Код: Выделить всё

shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> scripts/mysql_install_db
shell> chown -R root /usr/local/mysql
shell> chown -R mysql /usr/local/mysql/var
shell> chgrp -R mysql /usr/local/mysql
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> /usr/local/mysql/bin/safe_mysqld --user=mysql &
или
shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &

Проделав эти действия, у меня по команде "mysqld_safe --user=mysql & " запускается демон (ps -aux|grep mysql - я вижу процесс), netstat -a --numeric-ports показывает открытый сокет на 3306 порту

однако, находясь в папке /usr/local/mysql/bin, у меня не получается запустить "mysql -u root -p" или просто "mysql" (пароль для рута я не заводил).

Вот тут я зашел в тупик и хочу попросить помощи. По пунктам:
1) теория установки ПО. тут: http://linuxpage.ru/content/99 написано:
При установке ПО в Unix используется один из трех вариантов:

Из готового пакета (в RedHat Linux -- при помощи rpm).
Разворачивание из файла .tar.gz или .tgz, содержащего готовые исполняемые файлы.
Компиляция из исходных текстов.

как узнать, лежит у меня в архиве версия, которую надо компилировать, или просто скопировать в нужные папки?
2) как мне запустить mysql клиент? (вроде нашел инструкцию, как посмотреть/поменять пароли и пользователей на базу)
3) как сделать, чтобы mysqld сам грузился вместе с системой, чтобы руками каждый раз не запускать mysqld_safe --user=mysql &

Berserker
Неотъемлемая часть форума
Сообщения: 279
Зарегистрирован: 23 апр 2005, 21:13
Откуда: minsk

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение Berserker »

Скачай debian 5.0 (lenny), там mysql 5.0.51

nix_user
Интересующийся
Сообщения: 70
Зарегистрирован: 15 фев 2008, 16:59

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение nix_user »

так почти все уже готово

однако, находясь в папке /usr/local/mysql/bin, у меня не получается запустить "mysql -u root -p" или просто "mysql" (пароль для рута я не заводил).

1 проверить ls /usr/local/mysql/bin/mysql
2 пробовать запускать так ./mysql или используя полный путь /usr/local/mysql/bin/mysql. Если заработает добавить в PATH=$PATH:/usr/local/mysql/bin/
после этого можно запускать просто mysql

Berserker
Неотъемлемая часть форума
Сообщения: 279
Зарегистрирован: 23 апр 2005, 21:13
Откуда: minsk

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение Berserker »

Ты выбрал неправильный путь, хотя и почти достиг цели.

HowTo
Заглянувший
Сообщения: 7
Зарегистрирован: 08 авг 2011, 15:04

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение HowTo »

Berserker писал(а):Ты выбрал неправильный путь, хотя и почти достиг цели.

А какой путь правильный? Ведь именно за поиском правильного пути я и пришел на форум

nix_user
Интересующийся
Сообщения: 70
Зарегистрирован: 15 фев 2008, 16:59

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение nix_user »

HowTo писал(а):
Berserker писал(а):Ты выбрал неправильный путь, хотя и почти достиг цели.

А какой путь правильный? Ведь именно за поиском правильного пути я и пришел на форум


Если я правильно мыслю, то уважаемый Berserker предлагает установить версию Mysql 5.0.51a-24+lenny5. Но все же этот путь не ведет к версии 5.0.67. Так что придется выбирать правильный путь самостоятельно, либо правильная установка из пакетов, либо правильная версия базы данных из исходников. Можно конечно поискать deb пакет с версией 5.0.67 либо собрать свой deb пакет.

HowTo
Заглянувший
Сообщения: 7
Зарегистрирован: 08 авг 2011, 15:04

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение HowTo »

О, да! спасибо большое nix_user почему-то находясь в папке /usr/local/mysql/bin у меня не запускаются, зато указав полный путь - все работает. По крайней мере то, что не работало раньше. Буду дальше ковырять

nix_user
Интересующийся
Сообщения: 70
Зарегистрирован: 15 фев 2008, 16:59

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение nix_user »

HowTo писал(а):О, да! спасибо большое nix_user почему-то находясь в папке /usr/local/mysql/bin у меня не запускаются, зато указав полный путь - все работает. По крайней мере то, что не работало раньше. Буду дальше ковырять

Просьба заметить разницу между ./mysql и mysql - последнее не будет работать из /usr/local/mysql/bin, пока не изменить значение переменной окружения $PATH. Почему так - читать man bash искать описание переменной PATH и гуглить.

Berserker
Неотъемлемая часть форума
Сообщения: 279
Зарегистрирован: 23 апр 2005, 21:13
Откуда: minsk

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение Berserker »

HowTo писал(а):
Berserker писал(а):Ты выбрал неправильный путь, хотя и почти достиг цели.

А какой путь правильный? Ведь именно за поиском правильного пути я и пришел на форум


Я исходил из того, что раз тебе нужна mysql 5.0, то почему бы не поставить debian lenny, а потом штатными ср-вами установить apt-get install mysql-server .

HowTo
Заглянувший
Сообщения: 7
Зарегистрирован: 08 авг 2011, 15:04

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение HowTo »

Berserker писал(а):
HowTo писал(а):
Я исходил из того, что раз тебе нужна mysql 5.0, то почему бы не поставить debian lenny, а потом штатными ср-вами установить apt-get install mysql-server .


Я, конечно, могу ошибаться, но, разве для apt-get есть разница из-под какого дистрибутива я обращаюсь к репозиторию? Что предлагает репозиторий, а это, опять же, как я себе это представляю, последняя стабильная версия, то и будет установлено.
тут: http://citforum.ru/operating_systems/li ... kage.shtml
нашел, что через apt-get можно попытаться установить конкретную версию

Код: Выделить всё

apt-get install foo=2.2.4-1
 Устанавливает конкретную версию 2.2.4-1 пакета foo.


однако apt-get install mysql-server=5.0.67 выдает, что нет такой версии в репозитории

Berserker
Неотъемлемая часть форума
Сообщения: 279
Зарегистрирован: 23 апр 2005, 21:13
Откуда: minsk

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение Berserker »

Конечно разница есть. Просто сравни sources.list из 2 дистров, lenny & squeeze. В каждом прописана соответствующая версия. Именно поэтому stable & old-stable имеют разные версии пакетов.
http://packages.debian.org/search?keywords=mysql-server

HowTo
Заглянувший
Сообщения: 7
Зарегистрирован: 08 авг 2011, 15:04

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение HowTo »

Добрый день!
Моя эпопея непонимания продолжается, и я вновь хочу обратиться за помощью. Благодаря участникам форума, я смог установить mysql-server нужной версии из исходных кодов.
Теперь требуется сделать, чтобы он загружался вместе с осью.
ос: debian-6.0.1a-i386-businesscard
в папке support-files я нашел скрипт mysql.server
внутри него следующий текст:

Код: Выделить всё

# MySQL daemon start/stop script.

# Usually this is put in /etc/init.d (at least on machines SYSV R4 based
# systems) and linked to /etc/rc3.d/S99mysql and /etc/rc0.d/K01mysql.
# When this is done the mysql server will be started when the machine is
# started and shut down when the systems goes down.

Сделал, как написано.

Код: Выделить всё

cp mysql.server /etc/init.d
cd /etc/rc3.d
ln -s /etc/init.d/mysql.server
mv mysql.server S99mysql
cd /etc/rc0.d
ln -s /etc/init.d/mysql.server
mv mysql.server K01mysql

Пришлось еще задать chmod 755 /etc/init.d/mysql.server. Если запускаю скритп руками ./mysql.server start - все гуд, запускается. а вот при старте системы - не запускается.

Попробовал посмотреть лог загрузки, как написано тут: http://forum.battlefox.ru/showthread.php?t=13919 ,

Код: Выделить всё

Активировать запись лога и читать его после загрузки:

    Отредактируем файл bootlogd:
    Код:

    su
    sed -i 's/No/Yes/' /etc/default/bootlogd

    Разрешим пользователю читать логи, где MyUser ваш логин:
    Код:

    usermod -aG adm MyUser
    reboot

    Читаем лог:
    Код:

    more /var/log/boot

каких-то ошибок не увидел, однако там не написано, как обратно выключить ведение лога.
Отсюда 2 вопроса:
1) как правильно заставить mysql грузиться вместе с осью
2) как выключить ведение лога загрузки

Спасибо!

leave
Неотъемлемая часть форума
Сообщения: 1055
Зарегистрирован: 25 окт 2006, 14:50
Откуда: minsk
Контактная информация:

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение leave »

Дефолтный ранлевел же 2 (если с X-сервером, то 5).

HowTo
Заглянувший
Сообщения: 7
Зарегистрирован: 08 авг 2011, 15:04

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение HowTo »

leave писал(а):Дефолтный ранлевел же 2 (если с X-сервером, то 5).

попробовал сделать символьную ссылку в rc2.d
ничего не изменилось (х-ов нет)

leave
Неотъемлемая часть форума
Сообщения: 1055
Зарегистрирован: 25 окт 2006, 14:50
Откуда: minsk
Контактная информация:

Re: Установка MYSQL нужной версии из исходных кодов

Сообщение leave »

/var/log/syslog, /var/log/daemon.log

Ответить