Koozali.org: home of the SME Server
Obsolete Releases => SME 7.x Contribs => Topic started by: bloodshoteye on September 04, 2007, 01:29:50 PM
-
Hi all
Seems to happen to me... :?
I am experiencing the following error when I get as far as testing the Contrib installation of Metadot 6.4.5.4 in /opt. I followed Russell's Howto and get as far the testing stage where one enters "perl index.pl":
# perl index.pl
DBI connect('metadotdb','metadot',...) failed: Access denied for user 'metadot'@'localhost' (using password: YES) at DBAccess/MySQL.pm line 87
<h2>Unable to connect to SQL Server</h2>
db_name: dbi:mysql:metadotdb<br />db_user: metadot<br />db_password: (not displayed)
Can't call method "tables" on an undefined value at DBAccess/DBIObj.pm line 94.
Compilation failed in require at Portal.pm line 36.
BEGIN failed--compilation aborted at Portal.pm line 36.
Compilation failed in require at index.pl line 39.
BEGIN failed--compilation aborted at index.pl line 39.
speedy_backend[5221]: perl_parse error
speedy[5219]: Cannot spawn backend process
Has anyone experienced this? If so could you point me to my error/s, pleeze?
Regards and thanks.
-
Check the metadot.conf file, make sure that the database user name and password information match when you setup the database
Metadot uses a configuration file that associates database information with the web server that you are running. It is located: /opt/metadot/etc
cd /opt/metadot/etc
Edit Metadot.conf you will need to modify these lines in the metadot.conf file to match the location where you install metadot on your server.
metadot.conf
Line 16 change the password created in the mysql setup. pass = yourpassword,
also check if mod perl is activated, if not
config setprop modPerl status enabled
signal-event post-upgrade
Russell
-
Hi Russell, thanks for prompt reply.
Check the metadot.conf file, make sure that the database user name and password information match when you setup the database
the conf file was correct,
and
config setprop modPerl status enabled
did that.
No change - same error
Regards
-
I'm sure it is a database error, try dropping the database and redo the database procedure again and match the user name and password with metadot.conf
also, did you have any trouble with Dag repository
and was all the perl modules installed
yum --enablerepo=base --enablerepo=updates --enablerepo=addons --enablerepo=dag install perl-GD perl-GD-Graph perl-GD-Graph3d perl-GD-Text-Util perl-Date-Pcalc perl-Email-Valid perl-Apache-DBI perl-AppConfig perl-Archive-Tar perl-Archive-Zip perl-Bit-Vector perl-CGI-SpeedyCGI perl-Compress-Zlib perl-Data-Compare perl-Date-Calc perl-ExtUtils-PkgConfig perl-File-Find-Rule perl-File-HomeDir perl-HTML-Format perl-HTML-Template perl-HTML-Tree perl-Image-Base perl-Image-Size perl-Lingua-EN-NameParse perl-LWP-UserAgent-Determined perl-Mail-POP3Client perl-MailTools perl-HTTP-BrowserDetect perl-HTTP-Server-Simple perl-HTTP-Request-Form perl-HTTP-DAV perl-MIME-tools perl-Number-Compare perl-Number-Format perl-OLE-Storage_Lite perl-Parse-RecDescent perl-Pod-POM perl-Spreadsheet-WriteExcel perl-Template-Toolkit perl-Test-Builder-Tester perl-Test-Manifest perl-Test-Simple perl-Test-SimpleUnit perl-Text-Autoformat perl-Text-CSV_XS perl-Unicode-String perl-XML-Dumper perl-XML-RSS perl-XML-Simple
Russell
-
I feel like I'm going deeper into no-mans land.
I dropped the database.
Then I tried to recreate it. I get these errors:
default_data]# mysql -uroot mysql < createdbanduser4x.sql
ERROR 1062 (23000) at line 1: Duplicate entry 'localhost-metadot' for key 1
[root@ps default_data]# mysql -e "grant all privileges on metadotdb.* to metadot@localhost identified by 'mypassword'"
[root@ps default_data]# mysql -e "flush privileges"
[root@ps default_data]# mysql -umetadot -pmypassword metadotdb < sampledata.sql
ERROR 1049 (42000): Unknown database 'metadotdb'
Come to think of it, I had the "Duplicate entry 'localhost-metadot' for key 1" the very 1st time I ever followed the howto.
I tried with phpmyadmin also, but that method asks for a metadot.users table. I don't know the details for that.
Regards
-
Small correction.
The database user wasn't deleted when I dropped the database. After deleting him, I could recreate the database as per the howto, but I still get the error in my original post, repeated here for convenience:
# perl index.pl
DBI connect('metadotdb','metadot',...) failed: Access denied for user 'metadot'@'localhost' (using password: YES) at DBAccess/MySQL.pm line 87
<h2>Unable to connect to SQL Server</h2>
db_name: dbi:mysql:metadotdb<br />db_user: metadot<br />db_password: (not displayed)
Can't call method "tables" on an undefined value at DBAccess/DBIObj.pm line 94.
Compilation failed in require at Portal.pm line 36.
BEGIN failed--compilation aborted at Portal.pm line 36.
Compilation failed in require at index.pl line 39.
BEGIN failed--compilation aborted at index.pl line 39.
speedy_backend[4742]: perl_parse error
speedy[4740]: Cannot spawn backend process
The line Unable to connect to SQL Server makes one think, eh?
Regards
-
This error relates to your metadot.conf not matching up with your database configuration
# perl index.pl
DBI connect('metadotdb','metadot',...) failed: Access denied for user 'metadot'@'localhost' (using password: YES) at DBAccess/MySQL.pm line 87
<h2>Unable to connect to SQL Server</h2>
db_name: dbi:mysql:metadotdb<br />db_user: metadot<br />db_password: (not displayed)
Can't call method "tables" on an undefined value at DBAccess/DBIObj.pm line 94.
Compilation failed in require at Portal.pm line 36.
BEGIN failed--compilation aborted at Portal.pm line 36.
Compilation failed in require at index.pl line 39.
BEGIN failed--compilation aborted at index.pl line 39.
speedy_backend[5221]: perl_parse error
speedy[5219]: Cannot spawn backend process
I would recommend using phpmyadmin drop the user metadot from the Privileges and also dropping the metadotdb from the database
and redo the database configuration and make sure that the metadot.conf file matches the database setup as shown below, the above error message relates metadot.conf not matching
The database Configuration
mysql -uroot mysql < createdbanduser4x.sql
mysql -e "grant all privileges on metadotdb.* to metadot@localhost identified by 'yourpassword'"
mysql -e "flush privileges"
mysql -umetadot -pyourpassword metadotdb < sampledata.sql
Modify Metadot configuration file
do these lines match how you created your database
/opt/metadot/etc
metadot.conf
Line:14 name = dbi:mysql:metadotdb
Line:15 user = metadot
Line:16 pass = yourpassword
Line:17 dbtype = MySQL
Line:18 featureset = open
also try checking out if CGI Speedy got installed
rpm -qa | grep perl-CGI-SpeedyCGI
if so, this should show up below
perl-CGI-SpeedyCGI-2.22-1.2.el4.rf
Russell
-
Solved :D
Russell, thanks for you help and your contrib.
I got to the point of no return and re-installed from scratch (I know it's the windoze way, but heck I had been battling for days with no end in site.)
All went just as you have described and I now have a working Metadot 6 website. It definitely was user error somewhere along the line.
I'm looking forward to Metadot 7.
-
Russell;
I get the same problems as described here.
Stupid question time, I am perhaps confusing which password I should be using. Is it my root/admin password or the database password.
Thanks in advance
-
NO NOT root password
it's the password you choose, change ''yourpassword'' to what you like and remember it, it is required for the metadot.conf file, what ever information you used in the database configuration needs to be applied to the metadot.conf file
The database Configuration
mysql -uroot mysql < createdbanduser4x.sql
mysql -e "grant all privileges on metadotdb.* to metadot@localhost identified by 'yourpassword'"
mysql -e "flush privileges"
mysql -umetadot -pyourpassword metadotdb < sampledata.sql
using the example above we now have
user: metadot
databse: metadotdb
password: yourpassword
this information then needs to be applied to the metadot.conf file
Modify Metadot configuration file
/opt/metadot/etc
metadot.conf
Line:14 name = dbi:mysql:metadotdb
Line:15 user = metadot
Line:16 pass = yourpassword
Line:17 dbtype = MySQL
Line:18 featureset = open
if you still get the DBI connect error when you run the perl index.pl, you will need to doulbe check your database configuration and your metadot conf
Good luck, Russell
-
Thanks for your quick reply. I went back and editted the files you suggested and still got more errors.
I thought that it would be best to start new so I went to wipe out the database got the error that I could not access the PHPmyadmin page. I also got this reply for server-manager, Joomla, and Egroupware. All of these were working properly before hand.
On the contrary, I am accessing this page through my SME server/gateway, can putty into server and log on as either root or admin, and my Samba shares work fine. Mail from Thunderbird is okay.
I tried removing the Metadot folder in the opt file but that did not resolve the issue.
Any suggestions you can make that would help resolve this would be greatly appreciated. Thanks in advance.
-
When you created your database, did you use root@localhost, if so, then you will need to reset the MySQL root password
go to http://wiki.contribs.org/MySQL
and look for Resetting the MySQL root password, and follow the instructions to reset root password
This will fix up your problems with phpmyadmin, server-manager and other appz that use mysql
This is what happens when you use root@localhost when creating your database :smile:
Good luck
Russell
-
I was hoping luck would not have to enter into it but.....
Anyways I logged in as root using putty and cut and pasted the sme 7.2 version of the commands, rebooted the server and it has not fixed the problem. I went on to read that you had to be local to access mysql. Not sure if this applies to the set of commands. Do you know?
Thanks in advance
-
Maybe there could be something wrong with your template fragement
cd /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/
and copy 87Metadot and paste it with reply to this forum
then remove the 87Metadot
and run these commands
expand-template /etc/httpd/conf/httpd.conf
/etc/rc.d/init.d/httpd-e-smith restart
if that does not fix your problem, then we might need to have a look at the error_log in /var/log/httpd/
also, I would be interested in looking at the .bash_history in /root to see what went wrong, do not post bash history on forum, it may contain password information, send via email to russell@fixitcomputers.com.au
Russell
-
#Metadot
ServerName myserver.ca
DocumentRoot /opt/metadot/metadot
Alias /metadot /opt/metadot/metadot
Alias /images/ /opt/metadot/images/
Alias /js/ /opt/metadot/js/
Alias /index.pl /opt/metadot/metadot/index.pl
Alias /public/ /opt/metadot/sitedata/public/
Alias /skins/ /opt/metadot/sitedata/skins/
Alias /htmlarea3/ /opt/metadot/js/htmlarea3/
Alias /private/ /opt/metadot/sitedata/private/
Alias /userchannel.pl /opt/metadot/metadot/userchannel.pl
<Directory /opt/metadot>
Options +Indexes +Includes +FollowSymLinks -MultiViews +ExecCGI
AllowOverride All
allow from all
AddHandler cgi-script .pl
PerlHandler speedy::Registry
PerlSendHeader On
DirectoryIndex index.pl
</Directory>
I posted as requested, deleted and executed the commands and I have access to the server manager back. Can I go through the how to again to try metadot?
I was going through the instructions and I am still confused re "yourpassword". According to the how to , the default password is 123456. So what password is supposed to go in place of "yourpassword"?
Thanks very much by the way.
-
the default password ''123456'' is to log into metadot when the installation is complete
the password for the database is whatever you choose ''yourpassword'' or if you like, leave it as is.
What if I create an install script for you to use, this will do the installation of metadot for you
I use WinSCP to modify or copy and transfer files, I find it really easy to use as with putty http://winscp.net/ or click this link to download it http://winscp.net/download/winscp404setup.exe
Russell
-
Re the database password, is there a restriction on nonalphanumeric characters? I always try to include at least 1 of these in my passwords. I noticed that when I was trying to fix things up following the instructions above, something did not go right one of the commands.
What is the difference between the 87 digit randomly generated password for mysql and this database password?
Ian
-
By looking at your bash history, I noticed that this command had not been run
config setprop modPerl status enabled
and
signal-event post-upgrade
go to /etc/httpd/conf and open httpd.conf, look at line 113, do you have something like LoadModule perl_module modules/mod_perl.so with out the #
# Extra Modules
#LoadModule php_module modules/mod_php.so
#LoadModule php3_module modules/libphp3.so
LoadModule external_auth_module modules/mod_auth_external.so
LoadModule php4_module modules/libphp4.so
LoadModule perl_module modules/mod_perl.so
LoadModule ssl_module modules/mod_ssl.so
AddExternalAuth pwauth /usr/lib/httpd/modules/pwauth
SetExternalAuthMethod pwauth pipe
Russell
-
Starting with Line 107 I have the following:
# Extra Modules
#LoadModule php_module modules/mod_php.so
#LoadModule php3_module modules/libphp3.so
LoadModule external_auth_module modules/mod_auth_external.so
LoadModule php4_module modules/libphp4.so
# modPerl disabled
LoadModule ssl_module modules/mod_ssl.so
AddExternalAuth pwauth /usr/lib/httpd/modules/pwauth
SetExternalAuthMethod pwauth pipe
-
I got it working thx. One of the mistakes I made that others may make involved this step in the how to
#Metadot
ServerName yourdomain.com
DocumentRoot /opt/metadot/metadot
Alias /metadot /opt/metadot/metadot
Alias /images/ /opt/metadot/images/
Alias /js/ /opt/metadot/js/
Alias /index.pl /opt/metadot/metadot/index.pl
Alias /public/ /opt/metadot/sitedata/public/
Alias /skins/ /opt/metadot/sitedata/skins/
Alias /htmlarea3/ /opt/metadot/js/htmlarea3/
Alias /private/ /opt/metadot/sitedata/private/
Alias /userchannel.pl /opt/metadot/metadot/userchannel.pl
<Directory /opt/metadot>
Options +Indexes +Includes +FollowSymLinks -MultiViews +ExecCGI
AllowOverride All
allow from all
AddHandler cgi-script .pl
PerlHandler speedy::Registry
PerlSendHeader On
DirectoryIndex index.pl
</Directory>
I assumed that changing the "ServerName yourdomain.com" to my actual servername and domain name was required.This proved not required.
-
also, did you have any trouble with Dag repository
and was all the perl modules installed
yum --enablerepo=base --enablerepo=updates --enablerepo=addons --enablerepo=dag install perl-GD perl-GD-Graph perl-GD-Graph3d perl-GD-Text-Util perl-Date-Pcalc perl-Email-Valid perl-Apache-DBI perl-AppConfig perl-Archive-Tar perl-Archive-Zip perl-Bit-Vector perl-CGI-SpeedyCGI perl-Compress-Zlib perl-Data-Compare perl-Date-Calc perl-ExtUtils-PkgConfig perl-File-Find-Rule perl-File-HomeDir perl-HTML-Format perl-HTML-Template perl-HTML-Tree perl-Image-Base perl-Image-Size perl-Lingua-EN-NameParse perl-LWP-UserAgent-Determined perl-Mail-POP3Client perl-MailTools perl-HTTP-BrowserDetect perl-HTTP-Server-Simple perl-HTTP-Request-Form perl-HTTP-DAV perl-MIME-tools perl-Number-Compare perl-Number-Format perl-OLE-Storage_Lite perl-Parse-RecDescent perl-Pod-POM perl-Spreadsheet-WriteExcel perl-Template-Toolkit perl-Test-Builder-Tester perl-Test-Manifest perl-Test-Simple perl-Test-SimpleUnit perl-Text-Autoformat perl-Text-CSV_XS perl-Unicode-String perl-XML-Dumper perl-XML-RSS perl-XML-Simple
Russell
I had problems installing these, is there a way to fix it?
-
What was the problem you had, was it with the dag repositories or something else
did you get this error message below
http://apt.sw.be/redhat/el4/en/i386/dag/repodata/primary.xml.gz: [Errno -1] Meta data file does not match checksum
Trying other mirror.
Error: failure: repodata/primary.xml.gz from dag: [Errno 256] No more mirrors to try.
if so, try running these commands below
wget --cache=off http://apt.sw.be/redhat/el4/en/i386/dag/repodata/filelists.xml.gz
wget --cache=off http://apt.sw.be/redhat/el4/en/i386/dag/repodata/primary.xml.gz
wget --cache=off http://apt.sw.be/redhat/el4/en/i386/dag/repodata/repomd.xml
Russell
-
Hi Russel,
I just got finished installing it correct now. What i did was installing the perl modules in bits and pieces. Finally it worked and i was able to login. Don't know why it wouldn't install the first time, maybe there was a timeout orso. Not sure about that.
Thanks for your quick response. :P
-
Hi Russell
I'm installing Metadot 6 for a customer on a fresh SME 7.2 install with all current updates.
I get this perl transaction check error:
Transaction Check Error: file /usr/lib/perl5/vendor_perl/5.8.5/Test/Builder/Tester.pm conflicts between attempted installs of perl-Test-Builder-Tester-1.01-1.2.el4.rf and perl-Test-Simple-0.72-1.el4.rf
file /usr/share/man/man3/Test::Builder::Tester.3pm.gz conflicts between attempted installs of perl-Test-Builder-Tester-1.01-1.2.el4.rf and perl-Test-Simple-0.72-1.el4.rf
file /usr/share/man/man3/Test::Builder::Tester::Color.3pm.gz conflicts between attempted installs of perl-Test-Builder-Tester-1.01-1.2.el4.rf and perl-Test-Simple-0.72-1.el4.rf
Any ideas, please?
Thanks for your patience.
-
try without installing perl-Test-Simple-0.72-1.el4.rf and see what happens
-
I re-installed and tried again. The perl update only completes if I remove perl-Test-Simple-0.72-1.el4.rf from the list.
Both times I have the exact same result:
# perl index.pl
DBI connect('metadotdb','metadot',...) failed: Access denied for user 'metadot'@'localhost' (using password: YES) at DBAccess/MySQL.pm line 87
<h2>Unable to connect to SQL Server</h2>
db_name: dbi:mysql:metadotdb<br />db_user: metadot<br />db_password: (not displayed)
Can't call method "tables" on an undefined value at DBAccess/DBIObj.pm line 94.
Compilation failed in require at Portal.pm line 36.
BEGIN failed--compilation aborted at Portal.pm line 36.
Compilation failed in require at index.pl line 39.
BEGIN failed--compilation aborted at index.pl line 39.
speedy_backend[5492]: perl_parse error
speedy[5490]: Cannot spawn backend process
Huh? - both times I made absolutely sure I followed your howto, especially using copy and paste.
Both times I made sure of the mysql requirements too :sad:
I have re-installed again and will give them Joomla in /opt. Real easy to upgrade it to V 1.0.13
I'm still intrigued why Metadot 6 is failing - I've had successful installations in the past on SME 7.2 :-?
Mean time I thank the SME community for all their hard work and am grateful for what they provide us. I've also been grateful in a monetary way and will do so again - really looking forward to SME 8 ;-)
-
speedy[5490]: Cannot spawn backend process
This could be due to that mod_perl was not install or activated
check to see if mod perl was installed
rpm -qa | grep mod_perl
if you get mod_perl-1.99_16-4.5, then try this to activate mod_perl
config setprop modPerl status enabled
signal-event post-upgrade
also check that other perl modules are installed
rpm -qa | grep perl-CGI-SpeedyCGI
perl-CGI-SpeedyCGI-2.22-1.2.el4.rf
rpm -qa | grep perl-Apache-DBI
perl-Apache-DBI-0.9901-2.2.el4.rf
If you did not get perl-CGI-SpeedyCGI-2.22-1.2.el4.rf and perl-Apache-DBI-0.9901-2.2.el4.rf after you ran the rpm -qa | grep, then it could be a problem with dag repository
Try setting up this repo
/sbin/e-smith/db yum_repositories set bfc-perl repository \
Name 'BFC - PERL' \
BaseURL 'http://www.fixitcomputers.com.au/yum/rpms/perl' \
EnableGroups no \
status disabled
expand-template /etc/yum.conf
yum --enablerepo=base --enablerepo=updates --enablerepo=addons --enablerepo=bfc-perl install perl-GD perl-GD-Graph perl-GD-Graph3d perl-GD-Text-Util perl-Date-Pcalc perl-Email-Valid perl-Apache-DBI perl-AppConfig perl-Archive-Tar perl-Archive-Zip perl-Bit-Vector perl-CGI-SpeedyCGI perl-Compress-Zlib perl-Data-Compare perl-Date-Calc perl-ExtUtils-PkgConfig perl-File-Find-Rule perl-File-HomeDir perl-HTML-Format perl-HTML-Template perl-HTML-Tree perl-Image-Base perl-Image-Size perl-Lingua-EN-NameParse perl-LWP-UserAgent-Determined perl-Mail-POP3Client perl-MailTools perl-HTTP-BrowserDetect perl-HTTP-Server-Simple perl-HTTP-Request-Form perl-HTTP-DAV perl-MIME-tools perl-Number-Compare perl-Number-Format perl-OLE-Storage_Lite perl-Parse-RecDescent perl-Pod-POM perl-Spreadsheet-WriteExcel perl-Template-Toolkit perl-Test-Builder-Tester perl-Test-Manifest perl-Test-Simple perl-Test-SimpleUnit perl-Text-Autoformat perl-Text-CSV_XS perl-Unicode-String perl-XML-Dumper perl-XML-RSS perl-XML-Simple
Russell