Koozali.org: home of the SME Server

Metadot 6.4.5.4 install hiccup

Offline bloodshoteye

  • *****
  • 232
  • +0/-0
  • Grateful thanks to SME devs
Metadot 6.4.5.4 install hiccup
« 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.
SME Server is a fantastic product - thank you!

Offline fixit

  • *
  • 216
  • +0/-0
    • http://www.fixitcomputers.com.au
Re: Metadot 6.4.5.4 install hiccup
« Reply #1 on: September 04, 2007, 02:07:28 PM »
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



.........

Offline bloodshoteye

  • *****
  • 232
  • +0/-0
  • Grateful thanks to SME devs
Re: Metadot 6.4.5.4 install hiccup
« Reply #2 on: September 04, 2007, 03:30:28 PM »
Hi Russell, thanks for prompt reply.
Quote
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
Quote
config setprop modPerl status enabled
did that.

No change - same error

Regards
SME Server is a fantastic product - thank you!

Offline fixit

  • *
  • 216
  • +0/-0
    • http://www.fixitcomputers.com.au
Re: Metadot 6.4.5.4 install hiccup
« Reply #3 on: September 04, 2007, 04:15:23 PM »
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
« Last Edit: September 04, 2007, 04:19:19 PM by fixit »
.........

Offline bloodshoteye

  • *****
  • 232
  • +0/-0
  • Grateful thanks to SME devs
Re: Metadot 6.4.5.4 install hiccup
« Reply #4 on: September 04, 2007, 05:11:44 PM »
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

SME Server is a fantastic product - thank you!

Offline bloodshoteye

  • *****
  • 232
  • +0/-0
  • Grateful thanks to SME devs
Re: Metadot 6.4.5.4 install hiccup
« Reply #5 on: September 04, 2007, 05:24:34 PM »
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
SME Server is a fantastic product - thank you!

Offline fixit

  • *
  • 216
  • +0/-0
    • http://www.fixitcomputers.com.au
Re: Metadot 6.4.5.4 install hiccup
« Reply #6 on: September 05, 2007, 02:38:23 AM »
This error relates to your metadot.conf not matching up with your database configuration

Quote
# 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
Quote


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
« Last Edit: September 05, 2007, 02:39:58 AM by fixit »
.........

Offline bloodshoteye

  • *****
  • 232
  • +0/-0
  • Grateful thanks to SME devs
Re: Metadot 6.4.5.4 install hiccup
« Reply #7 on: September 06, 2007, 12:42:35 AM »
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.
SME Server is a fantastic product - thank you!

Offline imcintyre

  • *
  • 609
  • +0/-0
Re: Metadot 6.4.5.4 install hiccup
« Reply #8 on: September 09, 2007, 06:36:20 PM »
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

Offline fixit

  • *
  • 216
  • +0/-0
    • http://www.fixitcomputers.com.au
Re: Metadot 6.4.5.4 install hiccup
« Reply #9 on: September 10, 2007, 02:23:45 AM »
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
« Last Edit: September 10, 2007, 04:51:34 PM by fixit »
.........

Offline imcintyre

  • *
  • 609
  • +0/-0
Re: Metadot 6.4.5.4 install hiccup
« Reply #10 on: September 10, 2007, 04:01:22 PM »
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.
« Last Edit: September 10, 2007, 04:03:23 PM by imcintyre »

Offline fixit

  • *
  • 216
  • +0/-0
    • http://www.fixitcomputers.com.au
Re: Metadot 6.4.5.4 install hiccup
« Reply #11 on: September 10, 2007, 05:02:31 PM »
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



.........

Offline imcintyre

  • *
  • 609
  • +0/-0
Re: Metadot 6.4.5.4 install hiccup
« Reply #12 on: September 10, 2007, 05:59:29 PM »
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

Offline fixit

  • *
  • 216
  • +0/-0
    • http://www.fixitcomputers.com.au
Re: Metadot 6.4.5.4 install hiccup
« Reply #13 on: September 11, 2007, 02:20:03 AM »
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


.........

Offline imcintyre

  • *
  • 609
  • +0/-0
Re: Metadot 6.4.5.4 install hiccup
« Reply #14 on: September 11, 2007, 03:04:04 AM »
Quote
#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.
« Last Edit: September 11, 2007, 04:29:00 AM by imcintyre »