Друзья!
Я апгрейдю php до версии 5.2.11 и мускул до версии 5.1.40 в Slackware 10.2 (с самой системой идет php 4 и mysql 4)
Установил mysql. Скомпилировался и установился без ошибок. Отредактировал файл rc.mysqld на запуск установленного мускула вместо того, который шел вместе с Системой. Проверил ps -ax - все ок - работает после старта ОС новый мускул. В логах mysql никаких ошибок нет.
Распаковал php. Сконфигурировал ./configure --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql/bin/mysql_config с указанием установленных новых Apacha 2 и собственно мускула. Однако на страничке phpinfo(), где описан mysql выводится версия предыдущего мускула:
mysql
Client API version 4.1.14
Подскажите, пожалуйста, как можно настроить php чтобы он видел обновленный mysql?
Заранее спасибо!
php и mysql на Slackware 10.2
Модератор: Модераторы разделов
-
fines
- Сообщения: 359
- ОС: Slackware-current
Re: php и mysql на Slackware 10.2
linuxuser2010 писал(а): ↑31.10.2009 17:10Подскажите, пожалуйста, как можно настроить php чтобы он видел обновленный mysql?
При обновлении пакетов в каталоге пользователя остаются каталоги типа .mysql, уничтожать нещадно.
-
linuxuser2010
- Сообщения: 16
- ОС: Linux Slackware
Re: php и mysql на Slackware 10.2
fines писал(а): ↑01.11.2009 01:32linuxuser2010 писал(а): ↑31.10.2009 17:10Подскажите, пожалуйста, как можно настроить php чтобы он видел обновленный mysql?
При обновлении пакетов в каталоге пользователя остаются каталоги типа .mysql, уничтожать нещадно.
прошелся поиском find / -name .mysql*
нашел только это
/root/.mysql_history
там только история команд и запросов. Я его удалил, но не помогло
Может что-то надо дописать php.ini?
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: php и mysql на Slackware 10.2
там клиент ставится отдельно от сервера. вы его тоже пересобрали?
кстати, от него многое зависит, например музыкальные программы и ещё что-то (от клиента).
-
linuxuser2010
- Сообщения: 16
- ОС: Linux Slackware
Re: php и mysql на Slackware 10.2
да Вы правы, видимо дело именно в этом. О том, что клиента надо собирать я вообще не знал
поискал инфу в инете нашел вот тут об этом мануал: http://www.codenet.ru/db/mysql5/manual.ru_...hp#mysql_config
Однако я не все понял если честно. Там пишется:
Если вы выполняете mysql_config без каких-либо параметров, вы получите все опции, которые он поддерживает плюс значение этих опций:
shell> mysql_config
sage: /usr/local/mysql/bin/mysql_config [OPTIONS]
Options:
--cflags [-I'/usr/local/mysql/include/mysql']
--libs [-L'/usr/local/mysql/lib/mysql' -lmysqlclient -lz -lcrypt -lnsl -lm -L/usr/lib -lssl -lcrypto]
--socket [/tmp/mysql.sock]
--port [3306]
--version [4.0.8-gamma]
--libmysqld-libs [ -L'/usr/local/mysql/lib/mysql' -lmysqld -lpthread -lz -lcrypt -lnsl -lm -lpthread -lrt]
Ну у меня все так (только все соответственно для 5-ого мускула значения).
А вот далее:
Вы можете это использовать, чтобы скопмилировать клиента MySQL таким образом:
CFG=/usr/local/mysql/bin/mysql_config
sh -c "gcc -o progname `$CFG --cflags` progname.c `$CFG --libs`"
Это надо в shellе прямо запускать? И пара наверно ламерских вопросов: gcc это что за программа? И что подразумевается под progname? Это имя будущей проги клиента или это какой-то скрипт на C который надо искать в системе в установленном мускуле?
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: php и mysql на Slackware 10.2
linuxuser2010 писал(а): ↑01.11.2009 23:11да Вы правы, видимо дело именно в этом. О том, что клиента надо собирать я вообще не знал
а я не говорил, что "надо". чем вас не устраивает текущий?
linuxuser2010 писал(а): ↑01.11.2009 23:11Это надо в shellе прямо запускать? И пара наверно ламерских вопросов: gcc это что за программа? И что подразумевается под progname? Это имя будущей проги клиента или это какой-то скрипт на C который надо искать в системе в установленном мускуле?
да... запускать из ком. строки... только как-то больно запутанно...
программа на С - это текстовый файл, на языке Си, который компилятор переводит в инструкции вашего CPU, потом эти инструкции выполняются. Программы на Си - это НЕ СКРИПТЫ. Скрипт каждый раз переводится в машинный код, а программа на си - только 1 раз. Потому Си - самый быстрый метод - один раз вам нужно три дня мучится, за то потом всё будет летать. Быстрее только написание программы прямо в машинном коде.
ЗЫЖ может не надо пересобирать ваш клиент? Клиент - просто программа для НАСТРОЙКИ вашей БД, и в работе НЕ ИСПОЛЬЗУЕТСЯ.
-
linuxuser2010
- Сообщения: 16
- ОС: Linux Slackware
Re: php и mysql на Slackware 10.2
я просто после того как все установил проверил таким скриптом:
<?
$dblocation="localhost";
$dbuser="root";
$dbpasswd="passwd";
$dbcnx=mysql_connect($dblocation, $dbuser, $dbpasswd);
if(!$dbcnx)
{
echo("Не удалось подключиться к базе данных");
exit();
}
$dbq=mysql_query("select version();");
echo(mysql_result($dbq,0));
?>
Он не работает. Уходит в ветку, где пишет "Не удалось подключиться к базе данных". Это не из-за клиента значит?
-
linuxuser2010
- Сообщения: 16
- ОС: Linux Slackware
Re: php и mysql на Slackware 10.2
нашел решение! если кому интересно/пригодиться делюсь:
вот как у меня выглядела страничка (ее часть о mysql) генерируемая функцией phpinfo():
mysql
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 4.1.14
MYSQL_MODULE_TYPE external
MYSQL_SOCKET /var/run/mysql/mysql.sock
MYSQL_INCLUDE -I/usr/include/mysql
MYSQL_LIBS -L/usr/lib -lmysqlclient
Directive Local Value Master Value
mysql.allow_persistent On On
mysql.connect_timeout 60 60
mysql.default_host no value no value
mysql.default_password no value no value
mysql.default_port no value no value
mysql.default_socket /tmp/mysql.sock /tmp/mysql.sock
mysql.default_user no value no value
mysql.max_links Unlimited Unlimited
mysql.max_persistent Unlimited Unlimited
mysql.trace_mode Off Off
Как видно в первой группе настроек относящихся к (как мне теперь стало известно благодаря drBatty) клиенту путь к сокету такой /var/run/mysql/mysql.sock
В php.ini у меня ссылка на /tmp/mysql.sock. Сам мускул располагает файл сокета тоже там.
Вылечилось прокидыванием симлинка из /var/run/mysql/ на файл /tmp/mysql.sock
LAMP теперь работает.
Единственно так и не разобрался с клиентом для mysql. Откуда скачать новую версию в исходниках, как ее правильно перекомпилировать и т.д. Если у кого-то есть инфа дайте плиз ссылки.
вот как у меня выглядела страничка (ее часть о mysql) генерируемая функцией phpinfo():
mysql
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 4.1.14
MYSQL_MODULE_TYPE external
MYSQL_SOCKET /var/run/mysql/mysql.sock
MYSQL_INCLUDE -I/usr/include/mysql
MYSQL_LIBS -L/usr/lib -lmysqlclient
Directive Local Value Master Value
mysql.allow_persistent On On
mysql.connect_timeout 60 60
mysql.default_host no value no value
mysql.default_password no value no value
mysql.default_port no value no value
mysql.default_socket /tmp/mysql.sock /tmp/mysql.sock
mysql.default_user no value no value
mysql.max_links Unlimited Unlimited
mysql.max_persistent Unlimited Unlimited
mysql.trace_mode Off Off
Как видно в первой группе настроек относящихся к (как мне теперь стало известно благодаря drBatty) клиенту путь к сокету такой /var/run/mysql/mysql.sock
В php.ini у меня ссылка на /tmp/mysql.sock. Сам мускул располагает файл сокета тоже там.
Вылечилось прокидыванием симлинка из /var/run/mysql/ на файл /tmp/mysql.sock
LAMP теперь работает.
Единственно так и не разобрался с клиентом для mysql. Откуда скачать новую версию в исходниках, как ее правильно перекомпилировать и т.д. Если у кого-то есть инфа дайте плиз ссылки.