Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: gimly в Mar 12, 2005, 14:45



Титла: mysql проблем
Публикувано от: gimly в Mar 12, 2005, 14:45
Здравейте!

Видях, че вече има тема за това, но тя не ми помогна. Използвам Fedora Core 1, Apache 2, PHP 4.3.3, MySQL 4.1.10. Когато опитам да стартирам phpmyadmin, а и при всеки опит да изпълня mysql_connect(), получавам съобщението:
Примерен код
Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /sites/www.gimly.com/index.php on line 2
Could not connect: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)


В директорията /var/lib/mysql/ няма такъв файл. Файлът mysql.sock се намира в /tmp/. Като стартирам
/usr/local/mysql/bin/mysqladmin, получавам:
Примерен код
host                              (No default value)
port                              3306
relative                          FALSE
socket                            /tmp/mysql.sock

В /etc/my.cnf съм задал за сокет /tmp/mysql.sock.
Можете ли да ми помогнете?


Титла: mysql проблем
Публикувано от: romeo_ninov в Mar 12, 2005, 14:53
Цитат (gimly @ Март 12 2005,15:45)
В директорията /var/lib/mysql/ няма такъв файл. Файлът mysql.sock се намира в /tmp/. Като стартирам
/usr/local/mysql/bin/mysqladmin, получавам:
Примерен код
host                              (No default value)
port                              3306
relative                          FALSE
socket                            /tmp/mysql.sock

В /etc/my.cnf съм задал за сокет /tmp/mysql.sock.
Можете ли да ми помогнете?

Във файла ny.cnf имаше две секции: сървър и клиент. Погледни дали не се различават


Титла: mysql проблем
Публикувано от: gimly в Mar 13, 2005, 03:58
не се различават  :(
още едно уточнение - като пусна ps -aux | grep mysqld:

Примерен код
root      1562  0.0  3.3  5080  976 ?        S    Mar12   0:00 /bin/sh ./bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/localhost.localdomain.pid
mysql     1598  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1645  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1646  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1647  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1648  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1649  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1650  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1651  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1652  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
mysql     1653  0.0  6.9 23628 2028 ?        S    Mar12   0:00 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.
root      1911  0.0  1.9  4624  556 pts/0    S    03:51   0:00 grep mysqld


Всъщност странното е (поне според мен), че аз нямам файлове в /var/lib/mysql/, a файлът /tmp/mysql.sock ми изглежда наред.
Още едно уточнение - от командния ред mysql сървърът си върви - създавам си таблици, изпълнявам си заявки.
Порових още малко по форумите, но без успех. Всички съветват да преинсталирам mysql-a и ми обясняват, че не ми върви демона :(


Титла: mysql проблем
Публикувано от: romeo_ninov в Mar 13, 2005, 09:09
А защо не прегледаш къде сочи PHP скриптовете къде сочат? Може там да е проблема.


Титла: mysql проблем
Публикувано от: gimly в Mar 13, 2005, 10:17
Ами мисля, че не е там проблема, защото тествах и със страница, в която пише само:
Примерен код
<?php
$link = mysql_connect('localhost', 'root', 'r1o2o3t4');
if (!$link) {
   die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

Резултатът беше същия  :(


Титла: mysql проблем
Публикувано от: romeo_ninov в Mar 13, 2005, 11:01
А защо не пробваш:
Примерен код

<?php
$link = mysql_connect('localhost:/tmp/mysql.sock', 'root', 'r1o2o3t4');
if (!$link) {
  die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

Явно php е компилиран с такава версия на mysql, която си е сложила socket-а на другото място
И следващия път когато питаш нещо попрочети документацията. Защото без да знам почти нищо за php ми трябваха по-малко от 5 минути консултация с документацията му за да открия горното!


Титла: mysql проблем
Публикувано от: gimly в Mar 13, 2005, 11:12
Сега каза друго:
Примерен код
Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in /sites/www.gimly.com/index.php on line 2
Could not connect: Client does not support authentication protocol requested by server; consider upgrading MySQL client


Титла: mysql проблем
Публикувано от: gimly в Mar 13, 2005, 11:23
romeo_ninov, извинявай, че те питам за неща, които ги има в документацията. предните 2 пъти като си инсталирах apache+php+mysql всичко беше наред и затова този път не прочетох документацията. предните 2 пъти беше на windows и на slackware. предполагам грешката се дължи на това, че инсталирах php преди mysql. доста рових из документациите на mysql и phpmyadmin, но, признавам, не погледнах тази на php-то. гледах по доста сайтове, включително mysql, но не открих нищо, което да ми помогне и затова писах тук. сега започвам да чета. предпочитам да оправя проблема, вместо да преинсталирам php и mysql. така поне ще знам какво да правя следващия път.
мерси за отделеното време.


Титла: mysql проблем
Публикувано от: romeo_ninov в Mar 13, 2005, 12:12
Цитат (gimly @ Март 13 2005,12:12)
Сега каза друго:
Примерен код
Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in /sites/www.gimly.com/index.php on line 2
Could not connect: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Тук явно проблема е в това че php не поддържа като хората mysql (в конкретната конфигурация). Резонно е първо наистина да инсталираш mysql, а после php. Между другото личната ми препоръка е в такива случаи да си инсталираш от сорсове
А какво има на ред 2 в тоя скрипт? Connect за mysql?


Титла: mysql проблем
Публикувано от: gimly в Mar 13, 2005, 14:41
Цитат
А какво има на ред 2 в тоя скрипт? Connect за mysql?

не те разбрах?
а как най-лесно да махна php и mysql? да ги изтрия физически сигурно не е добра идея?


Титла: mysql проблем
Публикувано от: DarkBoss в Mar 13, 2005, 15:20
chmod -R 777 /var/lib/mysql/
ako ne e tova vav google pi6e6e to4no na koq directoriq trqbva6e da se smenqt permissions.


Титла: mysql проблем
Публикувано от: romeo_ninov в Mar 13, 2005, 15:32
Цитат (gimly @ Март 13 2005,15:41)
Цитат
А какво има на ред 2 в тоя скрипт? Connect за mysql?

не те разбрах?
а как най-лесно да махна php и mysql? да ги изтрия физически сигурно не е добра идея?

rpm -e php..... mysql.....
Внимавай да махнеш ВСИЧКИ mysql пакети (сървър, клиент. други)