Hi, I'm trying to run an upgrade from a8 to a11 .. I'm following through the instructions in upgrade.txt.
The backend upgrade completed successfully. When I try to run the hostmaster-migrate command, I'm presented with the following error:
aegir@***:/var/aegir/hostmaster-0.4-alpha8#/var/aegir/drush/drush hostmaster-migrate aegir.***.com /var/aegir/hostmaster-0.4-alpha11
The external command could not be executed due to an application error. [error]
could not find driver [error]
Drush command could not be completed. [error]
Output from failed command : [error]
Fatal error: Call to a member function quote() on a non-object in /var/aegir/.drush/provision/db/db.drush.inc on line 311
Could not find a Drupal settings.php file at ./sites/default/settings.php. [error]
The drush command '@hostmaster provision-verify' could not be found. [error]
Output from failed command : [error]
Output from failed command : [error]
Any advice, much appreciated.
Thx, Luke
Comments
Comment #1
lukusHere's output with debug enabled:
(attached as a file, as it's quite long)
BTW - I'm currently running alpha8 with Omega8cc's provision script to allow me to make use of nginx. As provision has now been updated, I'm assuming this shouldn't be a problem
Comment #2
lukusI've also tried to install from scratch and I received the same error:
Comment #3
lukusI think this might actually be a bug report. If I'm wrong - please update accordingly.
Comment #4
paoloteo commentedI'm having he same issue.
I posted here: http://drupal.org/node/885334 the details. I opened another thread because I thought it was due to a new install but now looks like it's the same issue we have on upgrade.
Comment #5
lukusI've just tried to upgrade again. I can connect to the database in the way you've suggested, but I'm still receiving exactly the same error.
I've made sure I'm using the publicly accessible IP, the local IP has been commented out in my.cnf and I've updated my grants as described in the update.txt.
I'm receiving the same error - any advice appreciated.
Comment #6
adrian commentedthis is a support request.
there is no such thing as a critical support request.
Comment #7
lukusSorry, I wasn't sure how to mark this issue.
I've followed the instructions in update.txt carefully - so I wasn't sure whether this would be classified as a bug or support request. I marked the issue as critical, because it's stopping me from making use of any Aegir functionality.
Comment #8
lukusOkay. I've found the source of my error.
Later versions of Aegir make use of PHP for database access. If you are compiling PHP from source, you need to make sure that PDO support (and a mysql PDO driver are installed).
After ensuring that this was the case, the error disappeared.
Comment #9
whatdoesitwant commentedI know that pdo support has been shifted into the core apt packages with PHP5.3, as used by Ubuntu Lucid 10.04. Pdo is no longer provided through pecl. The necessary packages are supposedly installed by tasksel lamp. Nonetheless i get the error message. Anyone know the specific necessary packages for pdo-support? php5-mysql and ...?
Comment #10
socialnicheguru commentedjust found how to install pdo here:
http://www.theatons.com/ubuntu-install-php5-mysql-apache2-ssl-pdo-pdo_my...
hope it helps
Comment #11
socialnicheguru commentedHelp this is killing me.
I run as aegir:
$ $DRUSH hostmaster-migrate $AEGIR_DOMAIN $DRUPAL_DIR
I get these errors:
Unable to create new databases. [error]
An error occurred at function : [error]
drush_provision_verify
Drush command could not be completed.[error]
An error occurred at function : [error]
drush_provision_hostmaster_migrate_validate
I did the following as the update doc said
Mysql grants :
GRANT ALL ON *.* to 'aegir_root'@$AEGIR_HOST IDENTIFIED BY 'xxxx' WITH GRANT OPTION;
GRANT ALL ON *.* to 'aegir_root'@$AEGIR_IP IDENTIFIED BY 'xxxx' WITH GRANT OPTION;
I disabled bind in database my.cnf file
I can login using this command:
mysql -uaegir_root -p -h`uname -n`
These commands return what they should have without error: AEGIR_HOST=`uname -n` which is ubuntu
resolveip $AEGIR_HOST is 127.0.0.1
Is this right?
EDIT:
I received this error for aegir beta 11 and aegir beta 12
EDIT 2: I did more testing to see what was up. The hostmaster install script was returning "site_test" instead of the aegir_host. I am hoping this will help others find the cause
http://drupal.org/node/895806#comment-3381952
Comment #12
whatdoesitwant commentedSame here. If you run into trouble, the most important things to check during the upgrade are the values of aegir_root, AEGIR_HOST and AEGIR_IP. AEGIR_HOST should be your servername, AEGIR_IP should be your server's public ip.
Checking and setting these values is decribed in install.txt under DNS Configuration and Database configuration.
EDIT: (I assume that you are running on Ubuntu 9.10 or 10.04)
You've checked that you are running php 5.2:
php -v5.3 is not supported by aegir and if you run 5.3 you need to at least run 5.3.3, which isn't part of 10.04's default installation.
You've gone through upgrade.txt, reset the mysql grants, troubleshooted all you can think of. Now you find yourself in doubt about your aegir_root pasword.
Check if your aegir_root password is what you expect.
Elevate yourself to root.
sudo -sTry to log into mysql with your password for aegir_root. It may either be a generated string that aegir provided you with during installation, your aegir installation's user1 password or something else that you set yourself for security.
mysql -uaegir_root -p -h`uname -n`This should result in:
Welcome to the MySQL monitor.Leave mysql.
exitAlso check the following as the mysql root user:
Elevate yourself to root.
sudo -sLog into mysql as the mysql root user.
mysql -uroot -p mysqlRun:
SELECT * FROM user;The list that is returned should contain values for:
(Here i found that in my case I had set the AEGIR_IP and AEGIR_HOST from a completely different virtual machine (wtf?!) I maintain a couple of these, should one crash. I had created specified upgrade files for the machines. And I probably copied and pasted from the wrong source file during the upgrade. That was just clumsy. Never trust yourself. It is very unlikely that this will happen to you but i thought to mention it anyway.)
PS
Here's a link for resetting the mysql password for aegir_root on AEGIR_HOST. You need to do this with sudo rights or as root and as the root user for mysql.
Don't forget to flush the privileges and redo the grants from upgrade.txt.
Comment #13
Anonymous (not verified) commentedAll this uname -n, FQDN stuff is Linux knowledge, which power users (Aegir users) should have, and even then, we document the hell out of this stuff.
Closing old support requests too.