1.3, Gromophon (??), 03:22, 03/11/2009 [ответить]
| +/– |
да, спасибо, помогло DBD-Oracle-1.23 на сусь тоже не ставится, а 19-шка ставится
| |
1.5, dwk2005 (?), 15:47, 26/01/2010 [ответить]
| +/– |
на Linux 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:29:47 EST 2005 x86_64 x86_64 x86_64 GNU/Linux стало после установки Instant client x64
| |
1.7, Михаил (??), 13:13, 26/05/2019 [ответить]
| +/– |
Возникла необходимость настроить онлайн-отчеты: работники вводят в браузере IP адрес сервера БД oracle, выбирают период времени, жмут кнопку показать.
Короче, это тема Apache, cgi, dbi, yaml.
Решил написать тут, т к скурил весь гугл и ничего не помогло!!! Сам методом тыка на virtual box 100 раз раскатывая сохраненную ранее машину решил вопрос как это сделать.
ОС на сервере OEL7. Туда подходят команды для redhat, centOS.
Исходные данные:
IP адрес сервера 192.168.56.107, установлена ОС и оракл, больше ничего, голая система.
1) приводим в порядок Oracle( действия в ОС под юзером oracle)
стартуем листенер:
lsnrctl start
стартуем БД
sqlplus "/as sysdba"
SQL> startup
SQL> exit;
Коннектимся под юзером с правами DBA(у меня это system):
sqlplus /nolog
SQL> connect system@test;
создадим какую-нибудь таблицу:
SQL> create table m (name varchar2(5), numb int);
вставим в нее записи:
SQL> insert into m values('aaaaa', 1);
SQL> insert into m values('bbbbb', 2);
SQL> insert into m values('ccccc', 3);
проверяем:
SQL> select * from m;
2) установка apache(действия под юзером root):
yum install -y httpd
добавляем в автозагрузку
systemctl enable httpd
запускаем:
systemctl start httpd
Далее в браузере со своего ПК набрать 192.168.56.107
(если не заходит на сайт то под root набрать iptables -F)
3) устанавливаем CPAN(действия под юзером root)
yum install -y cpan
| |
1.8, Михаил (??), 13:20, 26/05/2019 [ответить]
| +/– |
4) установка модулей PERL
дать полные права на папку /usr
(иначе модули не устанавливаются, пишет что нет прав при создании Makefile.pl)
под юзером oracle пишем cpan
далее предлагается вариант конфигурации cpan.
можно набрать manual и настраивать. Я просто нажимал ввод и все стало по умолчанию.
Далее устанавливаем в след последовательности:
cpan> install CGI
cpan> install DBI
cpan> install YAML
cpan> install DBD::Oracle
(если в вас база mysql, то надо DBD::mysql. Короче, загуглите какой драйвер для вашей бд)
после установки каждого модуля проверяйте, чтобы было Makefile.pl - OK
Тестируем:
кидаем скрипт test.pl в /var/www/cgi-bin
Даем полные права на cgi-bin (внимание, если дать полные права на всю папку /var, то умирает Mobaxterm и больше ни вкакую не коннектится)
проходим в папку
cd /var/www/cgi-bin
стартуем скрипт
perl test.pl
И получаем нашу созданную таблицу m
Сам скрипт:
#!/usr/bin/perl -W
use DBI;
#$ENV{ORACLE_HOME}="/home/orcl/app/oracle/product/11.2.0.4";
#$ENV{NLS_LANG}="AMERICAN_CIS.CL8MSWIN1251";
my $db="192.168.56.107";
my $dbsid="test";
my $dbuser="system";
my $dbpass="123";
$db = DBI->connect("dbi:Oracle:host=$db;sid=$dbsid", $dbuser, $dbpass);
$sql0=$db->prepare(qq{
#select 'OK' from dual
select * from m
});
$sql0->execute();
while(@row=$sql0->fetchrow_array){
print $row[0]."\n";
}
| |
1.9, Михаил (??), 13:23, 26/05/2019 [ответить]
| +/– |
*если вы установили какой модуль в cpan и он с ошибкой и вы ее исправили, то для повторной установки надо перезайти в cpan.
* если устанавливать не под тем юзером, то потом придется в .bashprofile указывать полный путь к файлику Oracle.pm, иначе будет ошибка: Не удается найти DBD/Oracle.pm в @INC
| |
|