Issues with mysql and logmysql passwords

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Issue:

Due to wrong passwords in the database mysql/logmysql is not able to connect to the database with the existing password.

We need to change the passwords manually.

Error:

   #logmysql 
   ERROR 1044: Access denied for user 'zimbra'@'localhost' to database 'zimbra_logger'
   #mysql
   ERROR 1044: Access denied for user 'zimbra'@'localhost' to database 'zimbra'

Steps:

   1) For Mysql:
   a) Stop the mysql service. [Run as Zimbra: mysql.server stop]
   b) Run as ROOT vi /opt/zimbra/bin/mysql.server
   c) Modify the following:
     --defaults-file=${mysql_mycnf} \
     --external-locking \
     --ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 &
  TO
     --defaults-file=${mysql_mycnf} \
     --external-locking \
     --ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 --skip-grant-tables &
   Save and Exit the file.
   d) Start the mysql service. [Run as Zimbra: mysql.server start]
   e) Connect to the database.
   # mysql
   Welcome to the MySQL monitor.  Commands end with ; or \g.
   Your MySQL connection id is 6883
   Server version: 5.0.45-log Source distribution
   Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
   mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';      ----> Root user.
   mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='zimbra';    ----> Zimbra user.
   Make sure the password you specify is should be same as  
   zmlocalconfig -s | grep mysql_root_password and zmlocalconfig -s | grep zimbra_mysql_password. 
   mysql> FLUSH PRIVILEGES;
   mysql> exit
   f) Go back to the file remove the --skip-grant-tables and save and exit the file.
   g) Stop and start the mysql service. [mysql.server stop and start]
   h) Now try to connect without the --skip-grant-tables option and check.


2) For Logmysql:

   a) Stop the logmysql service. [Run as Zimbra: logmysql.server stop]
   b) Run as ROOT vi /opt/zimbra/bin/logmysql.server
   c) Modify the following:
     --defaults-file=${logger_mysql_mycnf} \
     --external-locking \
     --ledir=${logger_mysql_directory}/libexec &
   TO
     --defaults-file=${logger_mysql_mycnf} \
     --external-locking \
     --ledir=${logger_mysql_directory}/libexec --skip-grant-tables &
   Save and Exit the file.
   d) Start the logmysql service. [Run as Zimbra: logmysql.server start]
   e) Connect to the database.
   # logmysql
   Welcome to the MySQL monitor.  Commands end with ; or \g.
   Your MySQL connection id is 6883
   Server version: 5.0.45-log Source distribution
   Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
   mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';      ----> Root user.
   mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='zimbra';    ----> Zimbra user.
   Make sure the password you specify is should be same as  
   zmlocalconfig -s | grep mysql_logger_root_password and zmlocalconfig -s | grep zimbra_logger_mysql_password
   mysql> FLUSH PRIVILEGES;
   mysql> exit
   f) Go back to the file remove the --skip-grant-tables and save and exit the file.
   g) Stop and start the logmysql service. [logmysql.server stop and start]
   h) Now try to connect without the --skip-grant-tables option in the file and check.
Jump to: navigation, search