Страница 1 из 1

pure-ftpd и mysql

Добавлено: 2007-07-16 11:01:32
Гость
Добрый день!
У меня проблема в том, что pure не проходит авторизацию mysql.
Все сделал как в файле инстал, в дистрибутиве с pure. Сервер базы настроен нормально, с ним также нормально взаимодействует веб-сервер apache. Но при коннекте на фтп сервер, выдается ошибка о невозможности авторизации, а сам фтп сервер пишет "Jul 16 00:44:08 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] "

В чем может быть проблема? Все файлы конфигурации, дамп базы и файл с ошибкой в прикрепленном архиве. Благодарю за помощь заранее...


FTPd: pure-ftpd-1.0.21
OS: FreeBSD 6.0 RC1
Mysql:mysql-4.1.22

Дамп:

Код: Выделить всё

CREATE TABLE `users` (
  `User` varchar(16) NOT NULL default '',
  `Password` varchar(64) NOT NULL default '',
  `Uid` int(11) NOT NULL default '-1',
  `Gid` int(11) NOT NULL default '-1',
  `Dir` varchar(128) NOT NULL default '',
  PRIMARY KEY  (`User`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;

-- 
-- Дамп данных таблицы `users`
-- 

INSERT INTO `users` (`User`, `Password`, `Uid`, `Gid`, `Dir`) VALUES 
('123', '123', -1, -1, '/web/');
Конфиг:

Код: Выделить всё

##############################################
#                                            #
# Sample Pure-FTPd Mysql configuration file. #
# See README.MySQL for explanations.         #
#                                            #
##############################################


# Optional : MySQL server name or IP. Don't define this for unix sockets.

MYSQLServer     127.0.0.1


# Optional : MySQL port. Don't define this if a local unix socket is used.

MYSQLPort       3306


# Optional : define the location of mysql.sock if the server runs on this host.

#MYSQLSocket     /tmp/mysql.sock


# Mandatory : user to bind the server as.

MYSQLUser       ftpdb


# Mandatory : user password. You must have a password.

MYSQLPassword   123


# Mandatory : database to open.

MYSQLDatabase   ftpdb


# Mandatory : how passwords are stored
# Valid values are : "cleartext", "crypt", "md5" and "password"
# ("password" = MySQL password() function)
# You can also use "any" to try "crypt", "md5" *and* "password"

MYSQLCrypt      cleartext


# In the following directives, parts of the strings are replaced at
# run-time before performing queries :
#
# \L is replaced by the login of the user trying to authenticate.
# \I is replaced by the IP address the user connected to.
# \P is replaced by the port number the user connected to.
# \R is replaced by the IP address the user connected from.
# \D is replaced by the remote IP address, as a long decimal number.
#
# Very complex queries can be performed using these substitution strings,
# especially for virtual hosting.


# Query to execute in order to fetch the password

MYSQLGetPW      SELECT Password FROM users WHERE User="\L"


# Query to execute in order to fetch the system user name or uid

MYSQLGetUID     SELECT Uid FROM users WHERE User="\L"


# Optional : default UID - if set this overrides MYSQLGetUID

#MYSQLDefaultUID 1000


# Query to execute in order to fetch the system user group or gid

MYSQLGetGID     SELECT Gid FROM users WHERE User="\L"


# Optional : default GID - if set this overrides MYSQLGetGID

#MYSQLDefaultGID 1000


# Query to execute in order to fetch the home directory

MYSQLGetDir     SELECT Dir FROM users WHERE User="\L"


# Optional : query to get the maximal number of files 
# Pure-FTPd must have been compiled with virtual quotas support.

# MySQLGetQTAFS  SELECT QuotaFiles FROM users WHERE User="\L"


# Optional : query to get the maximal disk usage (virtual quotas)
# The number should be in Megabytes.
# Pure-FTPd must have been compiled with virtual quotas support.

# MySQLGetQTASZ  SELECT QuotaSize FROM users WHERE User="\L"


# Optional : ratios. The server has to be compiled with ratio support.

# MySQLGetRatioUL SELECT ULRatio FROM users WHERE User="\L"
# MySQLGetRatioDL SELECT DLRatio FROM users WHERE User="\L"


# Optional : bandwidth throttling.
# The server has to be compiled with throttling support.
# Values are in KB/s .

# MySQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE User="\L"
# MySQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE User="\L"

# Enable ~ expansion. NEVER ENABLE THIS BLINDLY UNLESS :
# 1) You know what you are doing.
# 2) Real and virtual users match.

# MySQLForceTildeExpansion 1


# If you upgraded your tables to transactionnal tables (Gemini,
# BerkeleyDB, Innobase...), you can enable SQL transactions to
# avoid races. Leave this commented if you are using the
# traditionnal MyIsam databases or old (< 3.23.x) MySQL versions.

# MySQLTransactions On

сама ошибка

Код: Выделить всё

Jul 16 00:43:04 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem
 to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] 
Jul 16 00:43:09 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem
 to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] 
Jul 16 00:43:14 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem
 to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] 
Jul 16 00:43:19 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem
 to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] 
Jul 16 00:43:25 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem
 to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] 
Jul 16 00:44:08 hosting pure-ftpd: (?@192.168.10.1) [ERROR] The SQL server seem
 to be down [Access denied for user 'ftpdb'@'localhost' (using password: YES)] 

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 11:05:36
Alex Keda
не может подключиться к БД.
имя пользователя и пароль - верные?
с консоли ты ими заходишь?
версия базы?
версия ОС?

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 11:57:55
npu3pak
Access denied for user 'ftpdb'@'localhost' (using password: YES)
по моему надо пользователю ftpdb дать права на доступ к базе

в любом случае mysql -u ftpdb -p -h localhost --database=ftpdb для диагностики будет более полезным

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 13:24:11
Гость
lissyara писал(а):не может подключиться к БД.
имя пользователя и пароль - верные?
с консоли ты ими заходишь?
версия базы?
версия ОС?
Имя пользователя и пароль верные

Версии БД, ОС, ФТП:
FTPd: pure-ftpd-1.0.21
OS: FreeBSD 6.0 RC1
Mysql:mysql-4.1.22

2npu3pak
Вот сейчас выполнил ту команду, пишет :"ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)"
причем для любого пользователя существующего в базе. В то время как через mysqladmin все проходит нормально. Где надо прописать права, а то не пойму?!

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 13:26:45
Гость
опечатался, вместо root@ там был пользователь ftpdb@

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 13:31:38
Alex Keda
npu3pak писал(а):в любом случае mysql -u ftpdb -p -h localhost --database=ftpdb
это дай.

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 13:45:45
Гость
lissyara писал(а):
npu3pak писал(а):в любом случае mysql -u ftpdb -p -h localhost --database=ftpdb
это дай.
после ввода этой команды:
# mysql -u ftpdb -p -h localhost --database=ftpdb
Enter password:
ERROR 1045 (28000): Access denied for user 'ftpdb'@'localhost' (using password:YES)

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 13:56:29
Alex Keda
ну значит у тя неверный пароль от БД :)

Re: pure-ftpd и mysql

Добавлено: 2007-07-16 14:10:21
Гость
:D :P все правильно, до этого я создавал пользователя, но не привязывал его к базе, потому и не проходил авторизацию, хоть и пароль был верный, всю ночь парился, уже и пересобирал базу и фтп, спасибо за ответ!