Wednesday, September 03, 2008

Adobe Acrobat: "Could not initialize Organizer database."

There is an imbedded MySQL server that runs the Organizer. To check which configuration files it's attempting to load, run the following at Terminal:

"/Applications/Adobe Acrobat 8 Professional/Adobe Acrobat Professional.app/Contents/MacOS/mysqld" --no-defaults --verbose --help

What it shows for me is:

Default options are read from the following files in the given order: /etc/my.cnf /usr/local/mysql/data/my.cnf ~/.my.cnf

If you run your own MySQL server, an Apple installed MySQL server, and/or if any of these files just happen to exist on your system, it could be conflicting with the embedded Adobe MySQL server. On my system, I run MySQL to do local web development against and I use /etc/my.cnf as my configuration file, setting all sorts of options that the embedded Adobe MySQL chokes on or wasn't compiled to provide (InnoDB for example).

SO... what I did (your milage may vary) is rename the embedded mysqld and mysqladmin to mysqld.old and mysqladmin.old and then create the following script as both mysqld and mysqladmin in their stead:

#!/bin/sh
"$0.old" --no-defaults "$@"


This executes mysqld.old and mysqladmin.old with the additional flag --no-defaults ignoring any configuration files that happen to be on your system and use only the compiled in defaults.

It would appear to me to be a gross oversight on the part of Adobe to have the embedded mysqld read a global options file or any options file other than one it supplies OR it should be passing in --no-defaults when invoking the embedded server instance.

For those curious, the command line options getting passed to mysqld are:

--skip-networking --socket=/Users/[your name here]/Library/Caches/Acrobat/8.0_ppc/Organizer70 --skip-grant-tables --skip-innodb --myisam-recover --lower_case_table_names=1 --tmpdir=/Users/[your name here]/Library/Caches/Acrobat/8.0_ ppc/ --datadir=/Users/[your name here]/Library/Acrobat User Data/8.0_ppc/ --language=/Applications/Adobe Acrobat 8 Professional/Adobe Acrobat Professional.app/Contents/MacOS/

Command line options being passed to mysqladmin (when you shut down Acrobat) are:

--socket=/Users/[your name here]/Library/Caches/Acrobat /8.0_ppc/Organizer70 shutdown

UPDATE:

I've been asked for help getting this to work by those not familiar with the command line. Here's the step by step which should work for most people (first shut down Acrobat):

sudo -s

cd "/Applications/Adobe Acrobat 8 Professional/Adobe Acrobat Professional.app/Contents/MacOS/"

mv mysqld mysqld.old
echo '#!/bin/sh' > mysqld
echo '"$0.old" --no-defaults "$@"' >> mysqld
chmod +x mysqld

mv mysqladmin mysqladmin.old
echo '#!/bin/sh' > mysqladmin
echo '"$0.old" --no-defaults "$@"' >> mysqladmin
chmod +x mysqladmin

6 Comments...

Great post Benjamin! I was wondering if you can help me. I'm new to mac and don't know much about the command line. I followed your instructions up to the renaming of the embedded mysqld and mysqladmin to mysqld.old and mysqladmin.old. I then pasted the script you posted #!/bin/sh "$0.old" --no-defaults "$@" into the terminal. I opened adobe and I still get the "Could not initialize Organizer database" message. Can you please help me! What am I doing wrong? Thanks

Posted by Blogger Artur on September 19, 2008 7:46 AM  

You'll need to use a text editor to create the 2 new scripts or redirect from the command prompt after you've renamed the original executables. You'll also need to make sure the new replacement scripts have execute permissions. I posted some commands for you at the end of the original post.

Posted by Blogger Benjamin on September 21, 2008 8:12 PM  

Thank you for taking the time and helping me out! I pasted the scripts you posted into the terminal and a new mysqld and mysqladmin appeared in my "/Applications/Adobe Acrobat 8 Professional/Adobe Acrobat Professional.app/Contents/MacOS/" folder.
Unfortunately, I'm still getting the "could not initialize organizer database" error. I've even tried reinstalling adobe and repeating the commands. I'm not quite sure what else to do...

Posted by Blogger Artur on September 24, 2008 12:50 PM  

I may be able to help you troubleshoot a few things. You can email me by clicking on my image above and unmangling my email address. Sorry it didn't work for you.

Posted by Blogger Benjamin on September 24, 2008 3:37 PM  

Thank you good sir. This error has been driving me crazy, I can't believe adobe didn't use the correct flag to ignore system defaults in the first place. I chose to rename their versions of mysqld and mysqladmin to ".adobe" instead of ".old" just in case I ever forget what I did, and accidentally delete them when cleaning house because they are named "old" :)

Posted by OpenID reynaldo77 on February 10, 2009 7:18 PM  

Love it. Thanks Benjamin!

Posted by Anonymous Anonymous on February 05, 2010 1:03 PM  

Post a Comment

 · Blog Index