Pinba & CentOS

lealhost
На сайте с 07.06.2014
Offline
136
#11

Вы установили пакет mysql-devel?

То что у Вас есть - это сервер, готовый и скомпилированный. Ничего удалять не нужно.

Установите mysql-devel для начала.

yum install mysql-devel
nomarketing
На сайте с 23.09.2009
Offline
183
#12
lealhost:
Вы установили пакет mysql-devel?
То что у Вас есть - это сервер, готовый и скомпилированный. Ничего удалять не нужно.
Установите mysql-devel для начала.

yum install mysql-devel

Установил теперь есть папка

/usr/include/mysql

Делаю так как в найденном мануале (только я подставил Include папку, не знаю верно или нет)


./configure \
--with-mysql=/usr/include/mysql \
--with-judy=/usr/local \
--with-protobuf=/usr/local \
--with-event=/usr \
--libdir=/usr/lib/mysql/plugin
make install

Пишет ошибку



checking for MySQL source code... configure: error: Failed to find required header file include/my_dir.h in /u sr/include/mysql, check the path and make sure you've run './configure ..<options>.. && cd include && make' in MySQL sources dir



---------- Добавлено 03.03.2015 в 12:03 ----------

pupseg:
дайте в личку доступ на сервер

У меня на локалхосте, я бы н рискнул так играться с сервером :) а то поустанавливал бы там всего что откат надо было бы делать.

У меня именно проблема с понятием установки последнего шага, я просто это делаю первый раз, тем более я всегда все делал из момента обучение через YUM. А тут такое, и собрать и разобрать, но тот кто знает сделает это быстро, я все шаги выполнил кроме последнего, ибо не понимаю что там нужно сделать и откуда брать те исходники так как половину папок у меня нет которые пишут в мануалах..

---------- Добавлено 03.03.2015 в 12:13 ----------

Странно почему он говорит что нету файла

my_dir.h в /usr/include/mysql хотя я только что проверил и он там есть !

И еще нету директории "/usr/lib/mysql/plugin "

Капитан покидает корабль последним
lealhost
На сайте с 07.06.2014
Offline
136
#13

Я просто перемещал файлы туда, где pinba хотел их видеть.

Давайте начнем сначала.

1. Скачайте версию pinba из github'а:


cd /usr/local/src
wget https://github.com/tony2001/pinba_engine/archive/master.zip
unzip master.zip
cd pinba_engine-master
./buildconf.sh

Затем разберемся с исходниками MySQL. Давайте создадим новую директорию, в которую мы скопируем исходники, чтобы не портить оригинальные.

Директорию с которой будем работать: /tmp/source_mysql/.

Создаем ее и копируем исходники:


mkdir -p /tmp/source_mysql
cp /usr/include/mysql/* /tmp/source_mysql -R

Теперь, создадим архитектуру файлов, которую желает видеть pinba:


mkdir -p /tmp/source_mysql/include/mysql
cp /tmp/source_mysql/my_dir.h /tmp/source_mysql/include/
cp /tmp/source_mysql/plugin.h /tmp/source_mysql/include/mysql/
cp /tmp/source_mysql/mysql.h /tmp/source_mysql/include/
cp /tmp/source_mysql/mysql_version.h /tmp/source_mysql/include/
mv /tmp/source_mysql/private/ /tmp/source_mysql/sql/
cp /tmp/source_mysql/plugin_ftparser.h /tmp/source_mysql/sql/
cp /tmp/source_mysql/plugin.h /tmp/source_mysql/sql/

Выполняйте лучше по одной команде.

Каталог с плагинами mysql лежит в

/usr/lib64/mysql/plugin - для x86_64 ОС

cd /usr/lib/mysql/plugin - для x32 ОС

Соответственно, подставляем данный каталог в параметр конфигурации.

И конфигурируем. Обратите внимания, что директорию для --with-mysql Вы также должны изменить на /tmp/source_mysql


./configure --with-mysql=/tmp/source_mysql --with-judy=/путь_до_judy --with-event=/путь_до_event --libdir=/usr/lib64/mysql/plugin

Если ошибок нет, то продолжаем.


make

Если ошибок нет, то продолжаем.

make install

Смотрим, установился ли плагин в необходимую нам директорию:

ls -la /usr/lib64/mysql/plugin/libpinba_engine.so

Если видим файл, то подключаем плагин к MySQL, как написано в инструкции.

Для начала войдите в mysql-client с помощью команды mysql -uroot -p, введите пароль, и дальше по инструкции:

3.2. Plugin installation
------------------------

And then in MySQL console execute:

mysql> INSTALL PLUGIN pinba SONAME 'libpinba_engine.so';

I'd also suggest you to create a separate database, this way:

mysql> CREATE DATABASE pinba;

And then create the default tables:

# mysql -D pinba < default_tables.sql

If you did `make install` or used a precompiled package, look for default_tables.sql in /usr/share/pinba_engine directory.

Если все получилось, прописываем в /etc/my.cnf, в раздел [mysqld]:


pinba_port=3300

И перезагружаем сервер.

nomarketing
На сайте с 23.09.2009
Offline
183
#14
lealhost:
Я просто перемещал файлы туда, где pinba хотел их видеть.
Давайте начнем сначала.

1. Скачайте версию pinba из github'а:

cd /usr/local/src
wget https://github.com/tony2001/pinba_engine/archive/master.zip
unzip master.zip
cd pinba_engine-master
./buildconf.sh


Затем разберемся с исходниками MySQL. Давайте создадим новую директорию, в которую мы скопируем исходники, чтобы не портить оригинальные.
Директорию с которой будем работать: /tmp/source_mysql/.
Создаем ее и копируем исходники:

mkdir -p /tmp/source_mysql
cp /usr/include/mysql/* /tmp/source_mysql -R


Теперь, создадим архитектуру файлов, которую желает видеть pinba:

mkdir -p /tmp/source_mysql/include/mysql
cp /tmp/source_mysql/my_dir.h /tmp/source_mysql/include/
cp /tmp/source_mysql/plugin.h /tmp/source_mysql/include/mysql/
cp /tmp/source_mysql/mysql.h /tmp/source_mysql/include/
cp /tmp/source_mysql/mysql_version.h /tmp/source_mysql/include/
mv /tmp/source_mysql/private/ /tmp/source_mysql/sql/
cp /tmp/source_mysql/plugin_ftparser.h /tmp/source_mysql/sql/
cp /tmp/source_mysql/plugin.h /tmp/source_mysql/sql/

Выполняйте лучше по одной команде.

Каталог с плагинами mysql лежит в
/usr/lib64/mysql/plugin - для x86_64 ОС
cd /usr/lib/mysql/plugin - для x32 ОС

Соответственно, подставляем данный каталог в параметр конфигурации.
И конфигурируем. Обратите внимания, что директорию для --with-mysql Вы также должны изменить на /tmp/source_mysql

./configure --with-mysql=/tmp/source_mysql --with-judy=/путь_до_judy --with-event=/путь_до_event --libdir=/usr/lib64/mysql/plugin

Если ошибок нет, то продолжаем.


make

Если ошибок нет, то продолжаем.
make install


Смотрим, установился ли плагин в необходимую нам директорию:
ls -la /usr/lib64/mysql/plugin/libpinba_engine.so


Если видим файл, то подключаем плагин к MySQL, как написано в инструкции.
Для начала войдите в mysql-client с помощью команды mysql -uroot -p, введите пароль, и дальше по инструкции:
3.2. Plugin installation
------------------------

And then in MySQL console execute:

mysql> INSTALL PLUGIN pinba SONAME 'libpinba_engine.so';

I'd also suggest you to create a separate database, this way:

mysql> CREATE DATABASE pinba;

And then create the default tables:

# mysql -D pinba < default_tables.sql

If you did `make install` or used a precompiled package, look for default_tables.sql in /usr/share/pinba_engine directory.



Если все получилось, прописываем в /etc/my.cnf, в раздел [mysqld]:

pinba_port=3300


И перезагружаем сервер.

Спасибо большое за пояснение, но у меня тут же вылетела ошибка..

./buildconf.sh

make: *** [aclocal.m4] Error 127

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

Ага, нужно установить вот так - может у кого тоже такая проблема будет

Вот

yum install automake

yum install libtool

потом выполнять

./buildconf.sh

AA
На сайте с 21.12.2007
Offline
89
#15

А разве пинбу ещё не опакетили? http://pinba.org/


CentOS EL6 x86-64 packages and SRPMs are available here: http://yum.aclub.net/pub/linux/centos/6/umask/

Или это не то что нужно?

Заметки админа. (https://sysadmin.pm/) | Заметки в Telegram. (https://t.me/sysadminnotes)
lealhost
На сайте с 07.06.2014
Offline
136
#16
Artpsiholog Artalexa:
А разве пинбу ещё не опакетили? http://pinba.org/

Или это не то что нужно?

http://yum.aclub.net/pub/linux/centos/6/umask/x86_64/mysql-plugin-pinba-0.0.6-1.el6.x86_64.rpm

Сомневаюсь подойдет ли этот пакет для любой версии MySQL, но можно попробовать:

[root@s1 src]# rpm -qlip mysql*
warning: mysql-plugin-pinba-0.0.6-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 47bb7acc: NOKEY
Name : mysql-plugin-pinba Relocations: (not relocatable)
Version : 0.0.6 Vendor: (none)
Release : 1.el6 Build Date: Mon 26 Sep 2011 01:38:07 AM MSK
Install Date: (not installed) Build Host: builder-x86_64-el6.aclub.net
Group : Applications/Databases Source RPM: mysql-plugin-pinba-0.0.6-1.el6.src.rpm
Size : 437031 License: GPL
Signature : DSA/SHA1, Mon 26 Sep 2011 01:38:10 AM MSK, Key ID f48586d347bb7acc
URL : http://pinba.org/
Summary : Pinba MySQL plugin/engine
Description :
Pinba plugin/engine for MySQL for store pinba php extension performance data
/usr/lib64/mysql/plugin/libpinba_engine.so
/usr/lib64/mysql/plugin/libpinba_engine.so.0
/usr/lib64/mysql/plugin/libpinba_engine.so.0.0.0
/usr/share/doc/mysql-plugin-pinba-0.0.6
/usr/share/doc/mysql-plugin-pinba-0.0.6/NEWS
/usr/share/doc/mysql-plugin-pinba-0.0.6/README
/usr/share/doc/mysql-plugin-pinba-0.0.6/TODO
/usr/share/doc/mysql-plugin-pinba-0.0.6/default_tables.sql
/usr/share/doc/mysql-plugin-pinba-0.0.6/mysql-pinba.cnf
nomarketing
На сайте с 23.09.2009
Offline
183
#17
lealhost:
Сомневаюсь подойдет ли этот пакет для любой версии MySQL, но можно попробовать:
[root@s1 src]# rpm -qlip mysql*

warning: mysql-plugin-pinba-0.0.6-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 47bb7acc: NOKEY
Name : mysql-plugin-pinba Relocations: (not relocatable)
Version : 0.0.6 Vendor: (none)
Release : 1.el6 Build Date: Mon 26 Sep 2011 01:38:07 AM MSK
Install Date: (not installed) Build Host: builder-x86_64-el6.aclub.net
Group : Applications/Databases Source RPM: mysql-plugin-pinba-0.0.6-1.el6.src.rpm
Size : 437031 License: GPL
Signature : DSA/SHA1, Mon 26 Sep 2011 01:38:10 AM MSK, Key ID f48586d347bb7acc
URL : http://pinba.org/
Summary : Pinba MySQL plugin/engine
Description :
Pinba plugin/engine for MySQL for store pinba php extension performance data
/usr/lib64/mysql/plugin/libpinba_engine.so
/usr/lib64/mysql/plugin/libpinba_engine.so.0
/usr/lib64/mysql/plugin/libpinba_engine.so.0.0.0
/usr/share/doc/mysql-plugin-pinba-0.0.6
/usr/share/doc/mysql-plugin-pinba-0.0.6/NEWS
/usr/share/doc/mysql-plugin-pinba-0.0.6/README
/usr/share/doc/mysql-plugin-pinba-0.0.6/TODO
/usr/share/doc/mysql-plugin-pinba-0.0.6/default_tables.sql
/usr/share/doc/mysql-plugin-pinba-0.0.6/mysql-pinba.cnf

И у меня еще нет этих двух файлов

mv /tmp/source_mysql/private/ /tmp/source_mysql/sql/
cp /tmp/source_mysql/plugin_ftparser.h /tmp/source_mysql/sql/

И вопрос, sql и mysql это так надо ? т.е две разных или просто ошибка ? ну просто до MV идет копирование в директорию mysql а потом в sql

lealhost
На сайте с 07.06.2014
Offline
136
#18
nomarketing:

И вопрос, sql и mysql это так надо ? т.е две разных или просто ошибка ? ну просто до MV идет копирование в директорию mysql а потом в sql

mv /tmp/source_mysql/private/ /tmp/source_mysql/sql/

Эта команда, просто переименует private в sql

Да, уже посмотрел исходники MySQL 5.1, у вас этой папки нет. остановитесь с разборкой исходников на этом, и попробуйте выполнить конфигурирование и посмотрите какую ошибку выдаст.

nomarketing
На сайте с 23.09.2009
Offline
183
#19
lealhost:
mv /tmp/source_mysql/private/ /tmp/source_mysql/sql/
Эта команда, просто переименует private в sql

Да, уже посмотрел исходники MySQL 5.1, у вас этой папки нет. остановитесь с разборкой исходников на этом, и попробуйте выполнить конфигурирование и посмотрите какую ошибку выдаст.

Что то не пойму где этот judy установлен.. т.е я поиском нашел директорию его но пишет что нет хидеров джуди там...

Вот такой конфиг получился

./configure --with-mysql=/tmp/source_mysql --with-judy=/usr/local/src/protobuf-2.5.0/judy-1.0.5 --with-event=/opt/libevent --libdir=/usr/lib64/mysql/plugin

Я даже проверяю так установлен ли жуди

man Judy --version

man, version 1.6f

Но где его хидеры.. уже все перепробовал и /usr/local /usr/inlcude

Походу у меня вот этот RPM

http://rpm.pbone.net/index.php3/stat/4/idpl/23502408/dir/centos_6/com/Judy-devel-1.0.5-5.1.i686.rpm.html

У меня есть

/usr/include/Judy.h

Но нету

/usr/lib64/libJudy.so

Указал просто директорию просто /usr (пошло)

Потом, выполнил

make

и вуаля :)


Making all in src
make[1]: Entering directory `/usr/local/src/pinba_engine-master/src'
make all-am
make[2]: Entering directory `/usr/local/src/pinba_engine-master/src'
preserve-dup-deps --mode=compile gcc -DHAVE_CONFIG_H -I. -I/tmp/source_mysql/sql -I/tmp/source_mysql/include -I/tmp/source_mysql/regex -I/tmp/source_mysql -g -O2 -I/opt/libevent/include -I/usr/include -DMYSQL_DYNAMIC_PLUGIN -DNDEBUG -DJUDYERROR_NOTEST -MT pinba.pb-c.l o -MD -MP -MF .deps/pinba.pb-c.Tpo -c -o pinba.pb-c.lo pinba.pb-c.c
make[2]: preserve-dup-deps: Command not found
make[2]: [pinba.pb-c.lo] Error 127 (ignored)
mv -f .deps/pinba.pb-c.Tpo .deps/pinba.pb-c.Plo
mv: cannot stat `.deps/pinba.pb-c.Tpo': No such file or directory
make[2]: *** [pinba.pb-c.lo] Error 1
make[2]: Leaving directory `/usr/local/src/pinba_engine-master/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/local/src/pinba_engine-master/src'
make: *** [all-recursive] Error 1

Я пот вот этому мануалу все иснсталировал

https://groups.google.com/forum/#!topic/pinba-engine/0pHvzS0DH_o

lealhost
На сайте с 07.06.2014
Offline
136
#20

попробуйте, yum install libtool

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий