Pinba + MySQL 5.5.41 + Debian 7 Wheezy

268 views
Skip to first unread message

Роман Артурович

unread,
Feb 3, 2015, 7:32:46 AM2/3/15
to pinba-e...@googlegroups.com
Доброго времени!

На Wheezy php extension поставился:
# apt-get install php5-pinba
# php -m | grep pinba
pinba

Теперь делаю так же с мускулом:
# apt-get install pinba-engine-mysql-5.5
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation
or if you are using the unstable
distribution that some required packages have
not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 pinba
-engine-mysql-5.5 : Depends: mysql-server-core-5.5 (< 5.5.41) but 5.5.41-0+wheezy1 is to be installed
E
: Unable to correct problems, you have held broken packages.

Ладно, поставлю ту версию, которую хочет пинба (сервер свежий):
# apt-get install mysql-server-core-5.5
mysql
-server-core-5.5 is already the newest version.

0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.

Дебиан, если честно, вижу впервые (увы, его на что-то более известное мне не поменять) и, может, что-то не понимаю в их идеологии?
Попробовал удалить мускул и поставить его как просит пинба:
# apt-get remove libmysqlclient18 mysql-client-5.5 mysql-server-core-5.5
# apt-get install mysql-server-core-5.5
# apt-get install pinba-engine-mysql-5.5

The following packages have unmet dependencies:
 pinba
-engine-mysql-5.5 : Depends: mysql-server-core-5.5 (< 5.5.41) but 5.5.41-0+wheezy1 is to be installed
                         
Recommends: mysql-client-5.5 but it is not going to be installed
E
: Unable to correct problems, you have held broken packages.

Ок, ставлю recommended, но возвращаюсь к самой первой ошибке:
# apt-get install mysql-client-5.5

The following packages have unmet dependencies:
 pinba
-engine-mysql-5.5 : Depends: mysql-server-core-5.5 (< 5.5.41) but 5.5.41-0+wheezy1 is to be installed
E
: Unable to correct problems, you have held broken packages.

Что я делаю неправильно в данном случае? И как поставить пинбу?

Спасибо.

Antony Dovgal

unread,
Feb 3, 2015, 8:55:56 AM2/3/15
to pinba-e...@googlegroups.com
On 02/03/2015 03:32 PM, Роман Артурович wrote:
Ок, ставлю recommended, но возвращаюсь к самой первой ошибке:
# apt-get install mysql-client-5.5

The following packages have unmet dependencies:
 pinba
-engine-mysql-5.5 : Depends: mysql-server-core-5.5 (< 5.5.41) but 5.5.41-0+wheezy1 is to be installed
E
: Unable to correct problems, you have held broken packages.

Что я делаю неправильно в данном случае? И как поставить пинбу?

Наверное, какой-то старый пакет пинбы, который требует старый mysql.
Предполагаю, что надо связаться с майнтейнером пакета и попросить его обновить его .

Ну или взять и самому руками всё собрать, без пакетов.
-- 
Wbr,
Antony Dovgal
---
http://pinba.org - realtime profiling for PHP

Роман Артурович

unread,
Feb 3, 2015, 10:01:07 AM2/3/15
to pinba-e...@googlegroups.com
Спасибо за ответ!

Я могу установить pinba при установленном mysql из пакетов? Или mysql тоже нужно руками собирать?

вторник, 3 февраля 2015 г., 16:55:56 UTC+3 пользователь tony2001 написал:

Antony Dovgal

unread,
Feb 3, 2015, 10:14:10 AM2/3/15
to pinba-e...@googlegroups.com
On 02/03/2015 06:01 PM, Роман Артурович wrote:
> Спасибо за ответ!
>
> Я могу установить pinba при установленном mysql из пакетов? Или mysql тоже нужно руками собирать?

Проблематично.
Дело в том, что для сборки Pinba требуются заголовочные файлы MySQL, которые получается в процессе сборки и далее в систему не устанавливаются (и в пакете отсутствуют).
Для того, чтобы их получить, необходимо взять исходники пакета и сконфигурировать их с опциями, которые использовались при сборке самого пакета.
С этими исходниками MySQL уже можно собрать Pinba.
После этого, по идее, всё должно работать (однако, многие жалуются, что с Перконой, например, такое не проходит).

С исходниками гораздо проще: 1) собираем из исходников MySQL; 2) собираем из исходников Pinba, указав на директорию с исходниками MySQL

Роман Артурович

unread,
Feb 3, 2015, 12:46:02 PM2/3/15
to pinba-e...@googlegroups.com
Не уверен кому писать вопрос: вам или к mysql. Попробую всё же здесь иначе не собирал бы.

Для начала выпилил всё, что можно (всё ли?) после предыдущих экспериментов:
# apt-get purge mysql\* -y
# apt-get purge -y# apt-get autoremove -y
# apt-get autoclean -y
# apt-get clean -y
# apt-get update -y
# updatedb

Потом собрал из исходников mysql (без ошибок):
# mkdir -p /usr/local/src/mysql
# cd /usr/local/src/mysql
# apt-get source mysql-5.6
# apt-get install build-essential devscripts fakeroot -y
# cd /usr/local/src/mysql/mysql-5.6-5.6.21/
# debuild -uc -us
# cd /usr/local/src/mysql
# dpkg -i mysql-*.deb
# mysql --version

Наконец, попытался поставить pinba и вот здесь уже посыпались ошибки:
# cd /tmp
# git clone https://github.com/tony2001/pinba_engine.git
# cd /tmp/pinba_engine
# ./buildconf.sh
# ./configure \
   
--with-mysql=/usr/local/src/mysql/mysql-5.6-5.6.21 \
   
--with-judy=/judy/prefix \
   
--with-event=/event/prefix \
   
--libdir=/usr/lib/mysql/plugin
checking
for MySQL source code... configure: error: Failed to find required header file include/my_dir.h in /usr/local/src/mysql, check the path and make sure you've run './configure ..<options>.. && cd include && make' in MySQL sources dir

С использованием "/usr/local/src/mysql/mysql-5.6-5.6.21" и "/usr/local/src/mysql" ошибка одинаковая. Как так? Разве это не сорцы мускула?
# locate my_dir.h
/usr/local/src/mysql/mysql-5.6-5.6.21/debian/libmysqlclient-dev/usr/include/mysql/my_dir.h
/usr/local/src/mysql/mysql-5.6-5.6.21/debian/tmp/usr/include/mysql/my_dir.h
/usr/local/src/mysql/mysql-5.6-5.6.21/include/my_dir.h

# ./usr/local/src/mysql/mysql-5.6-5.6.21/configure
-bash: ./usr/local/src/mysql/mysql-5.6-5.6.21/configure: No such file or directory

Вроде, всё на месте. В какую сторону дальше копать подскажете?


вторник, 3 февраля 2015 г., 18:14:10 UTC+3 пользователь tony2001 написал:

Роман Артурович

unread,
Feb 3, 2015, 12:57:09 PM2/3/15
to pinba-e...@googlegroups.com
Видел в мануале, что нужно выполнить ./configure в директории с исходниками mysql.
Где взять параметры сборки знаю (mysqlbug), однако, выполнить конфигурацию не понятно как ибо нечего выполнять:
# cd /usr/local/src/mysql
# find . -type f -name "*configure*"
./mysql-5.6-5.6.21/configure-pic-stamp
./mysql-5.6-5.6.21/debian/tmp/usr/share/mysql/binary-configure
./mysql-5.6-5.6.21/builddir/support-files/binary-configure
./mysql-5.6-5.6.21/cmake/configure.pl
./mysql-5.6-5.6.21/builddir-pic/support-files/binary-configure
./mysql-5.6-5.6.21/libevent/configure.in
./mysql-5.6-5.6.21/configure.cmake
./mysql-5.6-5.6.21/configure-stamp
./mysql-5.6-5.6.21/BUILD/cmake_configure.sh
./mysql-5.6-5.6.21/storage/ndb/ndb_configure.cmake
./mysql-5.6-5.6.21/support-files/binary-configure.sh


вторник, 3 февраля 2015 г., 20:46:02 UTC+3 пользователь Роман Артурович написал:
Reply all
Reply to author
Forward
0 new messages