1

Тема: не могу запустить phpMyAdmin на своем сервере (Linux)

все настройки (хост, юзер, пароль, имя БД) правильные, проверял через консоль.
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin_dir/';
когда пытаюсь зайти на http://localhost/phpMyAdmin_dir/index.php (предварительно поставив $cfg['Servers'][$i]['auth_type']     = 'config') пишет:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)

а когда ставлю $cfg['Servers'][$i]['auth_type']     = 'cookie', загружает страницу входа в систему, но при вводе юзера и пароля, загружает страницу заново.

в чем тут может быть проблема? перелопатил форум на mysql.ru ничего не помогло sad

2

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

evgen
судя по ошибке не может найти сокет.

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

3 (изменено: evgen, 2006-03-24 22:14:47)

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

смотрел, такой файл там есть и путь в my.cnf прописан туда же. Проверил доступ туда, стоит drwxr-xr-x.
Хотя, хотя может в самом файле что-то не так, он у меня имеет 0 размер ( srwxrwxrwx  1 mysql mysql     0 Мар 24 19:28 mysql.sock )?

4

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

evgen
может тебе поможет вот это: http://dev.mysql.com/doc/refman/5.0/en/ … erver.html

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

5

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

проверил все переменные, все он правильно воспринимает. Путь к сокету тот же.

на: mysqladmin --socket=/var/lib/mysql/mysql.sock version заходит, не ругается.

С http сервером проблем нет, писал тут как-то статическую страничку, ее пробую - загружается.
Может где-то какие-то еще есть грабли между MySQL и phpMyAdmin?

6

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

evgen

Может где-то какие-то еще есть грабли между MySQL и phpMyAdmin?

Грабли могут быть в совместной работе твоего MySQL-сервера и PHP. PHP у тебя настроен на работу с MySQL? Что в логи пишет?

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

7

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

в логе mysql пишет:
060325 20:18:16  mysqld started
Cannot initialize InnoDB as 'innodb_data_file_path' is not set.
If you do not want to use transactional InnoDB tables, add a line
skip-innodb
to the [mysqld] section of init parameters in your my.cnf
or my.ini. If you want to use InnoDB tables, add to the [mysqld]
section, for example,
innodb_data_file_path = ibdata1:10M:autoextend
But to get good performance you should adjust for your hardware
the InnoDB startup options listed in section 2 at
http://www.innodb.com/ibman.html
/usr/libexec/mysqld: ready for connections

заглянул в php.ini, там все прописал кроме юзера и пароля, перезапустил сервер, но все-равно не помогло

8

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

заглянул в php.ini, там все прописал кроме юзера и пароля, перезапустил сервер, но все-равно не помогло

ты имел ввиду my.ini/my.cnf? Возникают проблемы при создании баз/таблиц? PHP у тебя работает с MySQL?
Насколько мне известно, phpMyAdmin работает под Unix корректно. Такое впечатление, что проблема не в настройке phpMyAdmin... но все же скинь на мой ящик конфиг phpMyAdmin, я посмотрю.

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

9

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

ты имел ввиду my.ini/my.cnf?

в php.ini тоже ж есть настройки MySQL...

Возникают проблемы при создании баз/таблиц?

без проблем экспортировал в БД sql файл, потом посмотрел, все таблицы создались

PHP у тебя работает с MySQL?

а как это проверить?

файл только что отправил

10

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

в php.ini тоже ж есть настройки MySQL...

разумеется есть, но MySQL-сервер отправил тебя разбираться с InnoDB в свой конфиг, а не в конфиг PHP


а как это проверить?

создай простейший скрипт, подобно такому:

<?
$db_connect=mysql_connect("","lokki","pass");
mysql_query("use pma");
$sql='SELECT * FROM news WHERE id=1';
$result=mysql_query($sql);
$row = mysql_fetch_array($result);
echo $row['title'];
?>

файл только что отправил

Попробуй выставить эти переменными пустыми, чтобы значение подставилось автоматически
$cfg['Servers'][$i]['port']  = '';
$cfg['Servers'][$i]['socket'] = '';
Зачем ты указываешь путь к сокету, если выбираешь тип соединения 'tcp'?
Зачем ты указываешь пароль пользователя если выбираешь cookie-аутентификацию?
Зачем ты ограничил пользователя root одной лишь базой mysql?:

$cfg['Servers'][$i]['only_db']='mysql

Оставляй значение пустым. Что это за рут у тебя такой, который ограничен одной системной базой?

Откуда такой раритет?:

/* $Id: config.inc.php,v 1.126 2002/07/25 22:49:34 robbat2 Exp $ */

Скачать новую версию нет возможности?

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

11

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

создай простейший скрипт, подобно такому:

попробовал такой:
<?
$db_connect=mysql_connect("","root","");
mysql_query("use mysql");
$sql='show columns from user';

не ругался, выводил:
?>Content-type: text/html
X-Powered-By: PHP/4.3.9

$cfg['Servers'][$i]['port']  = '';
$cfg['Servers'][$i]['socket'] = '';

так тоже пробовал, не помогало...

Зачем ты ограничил пользователя root одной лишь базой mysql?:

пробовал оставлять пустым, не помогало...

Скачать новую версию нет возможности?

сейчас пробую поставить 2.8.0.2...запускаю setup.php
не хочет сохранять конфиг-файл, хотя все это сделал:
    cd phpMyAdmin
    mkdir config                        # create directory for saving
    chmod o+rw config                   # give it world writable permissions

12

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

создал все-таки в текстовом редакторе config.inc.php, записал тут это:
/* Servers configuration */
$i = 0;

/* Server localhost (http:root) [1] */
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';

пишет:
Ответ MySQL:
#2002 - Сервер не отвечает (or the local MySQL server's socket is not correctly configured)
что значт неправильно скофигурирован сокет, как его надо сконфигурить?

13

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

попробовал такой:
<?
$db_connect=mysql_connect("","root","");
mysql_query("use mysql");
$sql='show columns from user';

не ругался, выводил:
?>Content-type: text/html
X-Powered-By: PHP/4.3.9

И ты считаешь это удовлетворительным решением? Content-type содержит данные о типе передаваемых данных, X-Powered-By - заголовок, вставленный PHP. Попробуй вот так:
<?
$db_connect=mysql_connect("","root","");
mysql_query("use mysql");
$sql='миру - мир';
?>
И ты увидишь тот же результат. Поэтому вопрос проверки работоспособности MySQL с PHP не снимается.

так тоже пробовал, не помогало...

Это не причина заполнять поля некорректно. Лучше оставь их пустыми, если не уверен точно, какие значения должны иметь эти переменные.

сейчас пробую поставить 2.8.0.2...запускаю setup.php
не хочет сохранять конфиг-файл, хотя все это сделал:

Ты не можешь создать папку 'config' доступную для записи?

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

14

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

Поэтому вопрос проверки работоспособности MySQL с PHP не снимается.

попробовал так:
<?
$db_connect=mysql_connect("","root","");
mysql_query("use mysql");
$sql='SELECT * FROM nuke_authors WHERE aid=1';
$result=mysql_query($sql);
$row = mysql_fetch_array($result);
пишет:PHP Warning:  (null)(): 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0
а что это означает я не понимаю, не силен в PHP sad

Ты не можешь создать папку 'config' доступную для записи?

если эта команда chmod o+rw config не делает этого, то получается не могу sad

15

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

$db_connect=mysql_connect("","root","");
mysql_query("use mysql");
$sql='SELECT * FROM nuke_authors WHERE aid=1';
$result=mysql_query($sql);
$row = mysql_fetch_array($result);

Это весь скрипт? Если да, то что ты хочешь увидеть?

Ошибка говорит, что для освобождения памяти, занимаемой результатом необходимо воспользоваться функцией mysql_free_result().

если эта команда chmod o+rw config не делает этого, то получается не могу

Хм... странно конечно, как же ты работаешь под Unix, если не можешь директории права на запись дать...

Тогда тебе остается вариант с предварительным скачиванием конфига на локальную систему, с последующей загрузкой в основную директорию phpMyAdmin. При таком подходе тебе не придется создавать директорию 'config', доступную для записи.

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

16

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

Поэтому вопрос проверки работоспособности MySQL с PHP не снимается.

cделал все так как написано здесь: http://www.codenet.ru/webmast/php/php-m … inners.php
вывод:
PHP Warning:  mysql_query(): Your query requires a full tablescan (table links, 5 rows affected). Use EXPLAIN to optimize your query. in /var/www/html/test/test.php on line 10
Content-type: text/html
X-Powered-By: PHP/4.3.9

<table border ='1'><tr><td>???/td><td>????</td></tr><tr><td><a href='http://www.programmingsite.co.uk'>http://www.programmingsite.co.uk</a></td><td>programming directory</td></tr> <tr><td><a href='http://www.beginnersphp.co.uk'>http://www.beginnersphp.co.uk</a></td><td>PHP tutorials and code</td></tr> <tr><td><a href='http://asp.programmershelp.co.uk'>http://asp.programmershelp.co.uk</a></td><td>ASP site with code and tutorials</td></tr> <tr><td><a href='http://javascript.programmershelp.co.uk'>http://javascript.programmershelp.co.uk</a></td><td>javascript site</td></tr> <tr><td><a href='http://software.programmingsite.co.uk'>http://software.programmingsite.co.uk</a></td><td>software directory</td></tr> </table>PHP Warning:  (null)(): 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0

т.е. он считывает строки из таблицы БД и PHP работает с MySQL ?

Хм... странно конечно, как же ты работаешь под Unix, если не можешь директории права на запись дать...

мне всегда казалось, что chmod +w (222) filename (dirname (рекурсивно)) дает разрешение на запись в файл (папку)...разве не так?

При таком подходе тебе не придется создавать директорию 'config', доступную для записи.

я так делал уже:

создал все-таки в текстовом редакторе config.inc.php, записал тут это:
/* Servers configuration */
$i = 0;

/* Server localhost (http:root) [1] */
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';

пишет:
Ответ MySQL:
#2002 - Сервер не отвечает (or the local MySQL server's socket is not correctly configured)
что значт неправильно скофигурирован сокет, как его надо сконфигурить?

17

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

evgen

создал все-таки в текстовом редакторе config.inc.php, записал тут это:
/* Servers configuration */
$i = 0;

/* Server localhost (http:root) [1] */
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';

Вместо сокета, tcp-соединение использовать не пытался?
Обрати внимание, что при использовании cookie-аутентификации необходимо задать значение переменной $cfg['blowfish_secret']

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

18 (изменено: evgen, 2006-03-27 23:30:11)

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

поставил tcp-соединение и задал  $cfg['blowfish_secret'], логин и парол принимает, но потом загружает чистую страницу...
добавил $cfg['OBGzip']=false; и поставил в php.ini  zlib.output_compression = Off как написано в [1.1] здесь http://php-myadmin.ru/faq/
то же самое...

19

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

evgen
FAQ читать не любим? А между прочим, если бы ты сразу полез в FAQ, то не было бы этих 18 постов: http://php-myadmin.ru/faq/config.html см. 2.3

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

20

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

любим, но не там, где надо smile
прописал путь к сокету и в php.ini и в config.inc.php, но тоже самое. Даже когда ввожу неправильный пароль, то загружает пустую страницу

21

Re: не могу запустить phpMyAdmin на своем сервере (Linux)

evgen
Кто хочет - ищет возможность, кто не хочет - ищет причину wink
Смотри FAQ - там точно рассмотрены случаи, когда выводится пустая страница (blank page).
Попробуй запретить (disable) session.autostart в php.ini

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)