Автор Тема: MySQL установлен, 500 ошибка  (Прочитано 4348 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yuraz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 111
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.kirov.ru/~yura
MySQL установлен, 500 ошибка
« : 18 Апреля 2002, 15:16:39 »
Посоветуйте, что пропустил при конфигурировании?
MySQL(mysql-3.23.49-win.zip) установил в с:/mysql , ничего не делал, т.е. больше ничего не редактировал. Запускаю mysqld, апаче, запускаю скрипт из браузера для проверки,

#!/usr/local/bin/perl
use DBI; # Загружаем модуль DBI, который позволяет
         # Perl работать с базами данных
         # Для его работы нужно скачать и установить два файла из:
         # http://www.activestate.com/PPMPackages/zips/6xx-builds-only/
         # DBI.zip и DBD-MySQL.zip.

$dbdriver  = "mysql";          # Имя DBI-драйвера, в нашем случае требуется
                               # драйвер MySQL. DBI, в принципе, наплевать,
                               # с какой базой работать - хоть с Oracle,
                               # хоть с Microsoft Access. Сейчас оставьте как есть.
$hostname  = "localhost";      # Где работает сервер MySQL?
$port      = "3306";           # Порт сервера?
$username  = "pass";          # Имя
$password  = "123456";         # и пароль пользователя MySQL
$basename  = "test";           # Название базы, в которой будем работать
$tablename = "testhowitworks"; # Имя таблицы, с которой будем экспериментировать. Если таблица с таким именем есть, она будет затёрта!

# Дальше ничего менять не надо. Не делайте код хуже чем он уже есть ;-)

print "Content-type: text/html\\n\\n";
print "\\n\\nТест взаимодействия Perl и MySQL\\n\\n\\n\\n";
print "

Тест взаимодействия Perl и MySQL

\\n

Этот простенький тест должен открыть модули DBI и DBD-MySQL в Perl,\\nсоздать таблицу $tablename в базе $basename и занести в неё\\nдесять нумерованных строчек. После этого эти строчки будут выведены на\\nэкран, и скрипт “приберёт за собой”, удалив уже не нужную\\nтаблицу $tablename.

\\n\\n";
print "

Если ничего не работает..

\\n

Вы не запустили MySQL, указали неверное имя пользователя и пароль,\\nили же неправильно настроили вебсервер. Распечатайте инструкции и шаг\\nза шагом проконтролируйте свои действия.

\\n\\n";

print "

Тест MySQL:

\\n";

# Дальше всё должно быть понятно даже тем, кто мало разбирается
# в MySQL, Perl и DBI. Код скрипта написан более в угоду понятности,
# нежели чем компактности и скорости. “Профи” скривят лицо, а вот
# новичкам будет понятнее.

$dbh = DBI->connect("dbi:$dbdriver:$basename:$hostname:$port","$username","$password");

# Если таблица $tablename в базе $basename уже есть, грохаем её.
# Если кто не спрятался, я не виноват.

$sqlstatement = "DROP TABLE IF EXISTS $tablename";
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";

# Создаём таблицу заново.

$sqlstatement = "CREATE TABLE $tablename (textfield TEXT NULL)";
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";

# Загоняем в неё десяток текстовых строчек

for ($counter=1; $counter < 11; $counter++) {
   $sqlstatement = "INSERT INTO $tablename VALUES (\'Это - строчка номер $counter\')";
   $sth = $dbh->prepare($sqlstatement);
   $sth->execute || die "Невозможно выполнить SQL-запрос.";
   };

# И выводим их обратно на экран.

$sqlstatement = "SELECT * FROM $tablename";
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";

print "\\n";
while (@row=$sth->fetchrow_array) {print "\\n";}
print "
Таблица $tablename:   
@row
";

# Убираемся за собой.

$sqlstatement = "DROP TABLE IF EXISTS $tablename";
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";

# Вот, собственно, и всё. Долгие и продолжительные аплодисменты зала.

 А тут логи Apache

[Thu Apr 18 15:04:15 2002] [error] [client 127.0.0.1] Premature end of script headers: c:/usr/local/cgi-bin/mysqltest.cgi
[Thu Apr 18 15:04:15 2002] [error] [client 127.0.0.1] Can\'t locate loadable object for module DBI in @INC (@INC contains: C:/usr/local/lib C:/usr/local/site/lib .) at C:/usr/local/lib/DBI.pm line 182

[Thu Apr 18 15:04:15 2002] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at C:/usr/local/lib/DBI.pm line 182.

[Thu Apr 18 15:04:15 2002] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at c:/usr/local/cgi-bin/mysqltest.cgi line 2.





Может быть библиотеку DBI и MySQL не так установил, просто списав файлы DBI.pm , MySQL.pm c такими же дирректориями из архива в директорию LIB перла.

Заранее спасибо.

Оффлайн ЖеньКа

  • Свободная статУя
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1013
  • +0/-0
  • 2
    • Просмотр профиля
Установка модулей DBI, DBD
« Ответ #1 : 18 Апреля 2002, 20:00:35 »
Цитировать
Может быть библиотеку DBI и MySQL не так установил,

Может быть. Нужно ставить через ppm
Ну и что что ветер в голове зато мысли всегда свежие.

Оффлайн Yuraz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 111
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.kirov.ru/~yura
Установка модулей DBI, DBD
« Ответ #2 : 18 Апреля 2002, 20:12:03 »
А где можно по ppm информацию найти, в собственном хелпе очень мало информации..
Вернее, делаю так, ложу файл в директорию BIN, запускаю ppm, пишу инсталл DBI.pm ,>>>> ошибка в такой то строке, плюс путь, которого несуществует. Типа c:/usr/local/bin/site/parser...
Может есть готовая строка запуска с библиотекой, с путями, к PPM чтоб только выполнить и всё ???
C:\\usr\\local\\html\\ppm.html смотрел.. так и делал..
« Последнее редактирование: 18 Апреля 2002, 20:18:14 от Yuraz »

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Установка модулей DBI, DBD
« Ответ #3 : 18 Апреля 2002, 21:20:42 »
Цитировать
Может быть библиотеку DBI и MySQL не так установил, просто списав файлы DBI.pm , MySQL.pm c такими же дирректориями из архива в директорию LIB перла.

И больше так не делай. :)
Цитировать
А где можно по ppm информацию найти, в собственном хелпе очень мало информации

Ее достаточено
ppm help install
Цитировать

Вернее, делаю так, ложу файл в директорию BIN, запускаю ppm, пишу инсталл DBI.pm

А теперь все по пунктам.
1. Скачиваем модули.
2. Распаковываем.
ppm
ppm> install DBI --location=path/to/ppd
ppm> install DBD::MySql --location=path/to/ppd
2B OR NOT 2B = FF

Оффлайн Yuraz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 111
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.kirov.ru/~yura
Установка модулей DBI, DBD
« Ответ #4 : 19 Апреля 2002, 09:20:09 »
Ух ты! Установил с 30 попытки, и то, после 29 дошло, может у меня перл не тот (5,006, W2K), раньше всё работало прекрасно. Сейчас на 5,6. Пробуем дальше.

Оффлайн Yuraz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 111
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.kirov.ru/~yura
Установка модулей DBI, DBD
« Ответ #5 : 19 Апреля 2002, 09:40:52 »
Ну вот и всё!!! Работает MySQL! Всем спасибо!

Оффлайн tankisti

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.ufa-studio.com
Установка модулей DBI, DBD
« Ответ #6 : 22 Апреля 2003, 10:53:20 »
А что делать с такой бедой:
Failed to load PPM_DAT file
Can\'t use an undefined value as a SCALAR reference at C:/usr/site/lib/PPM.pm line 1626, line 40.
может кто-нибудь знает?

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Установка модулей DBI, DBD
« Ответ #7 : 22 Апреля 2003, 11:02:30 »
moderator tankisti, не стоит дублировать сообщения - тебя и в другой теме нормально слышно.
[Тема закрыта]
The documentations is your friend

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28