Resetting LDAP & MySQL Passwords: Difference between revisions

m (only need one Resetting_LDAP_and_MySQL_Passwords page)
 
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
One of the most common problems with installing and starting a service is an incorrect LDAP or MySQL password.
#REDIRECT [[Resetting_LDAP_and_MySQL_Passwords]]
 
 
== Resetting the LDAP Password ==
First, we need to make sure that Zimbra is stopped.
 
Try running:
 
>su zimbra
 
>zmcontrol stop
 
Just to be safe, you can make sure that all Zimbra services are stopped:
 
>ps auxww | grep zimbra
 
>ps auxww | grep slapd
 
 
Kill any left over processes.
 
Now, we can reset the passwords:
 
First the root(note: these are run as user zimbra)
 
>zmldappasswd --root '''newpass'''
 
Next the zimbra:
 
>zmldappasswd '''newpass'''
 
Make sure you use the same password for both!
 
== Resetting the Logger Password ==
 
'''In the event you have lost your logger password, or it has otherwise become out of sync after an upgrade, you can reset it. Keep in mind that the logger is not a required component to have running.'''
 
First, we need to make sure that Zimbra is stopped.
 
Try running:
 
>su zimbra
 
>zmcontrol stop
 
Just to be safe, you can make sure that all Zimbra services are stopped:
 
>ps auxww | grep zimbra
 
>ps auxww | grep mysql
 
Kill any left over processes.
 
Now, we can reset the passwords:
 
'''root logger account'''<br>
For the root mysql logger account, you need to start the mysql logger instance with the --skip-grant-tables option.  As root, modify the /opt/zimbra/bin/logmysql.server file:
 
 
''Change:''
 
<code>
'start') <br>
<nowiki>#--defaults-file must be first argument</nowiki> <br>
cd ${mysql_directory}; \ <br>
${mysql_directory}/bin/mysqld_safe \ <br>
--defaults-file=${mysql_mycnf} \ <br>
--ledir=${mysql_directory}/bin & <br>
;; <br>
</code>
 
''To:''
 
<code>
'start') <br>
<nowiki># --defaults-file must be first argument</nowiki> <br>
cd ${mysql_directory}; \ <br>
${mysql_directory}/bin/mysqld_safe \ <br>
--defaults-file=${mysql_mycnf} \ <br>
<b>--skip-grant-tables \ </b><br>
--ledir=${mysql_directory}/bin & <br>
;;<br>
</code>
 
Save the file & start the server as the zimbra user:
>su - zimbra
>logmysql.server start
 
Use the mysql command to connect to the logger database:
 
>mysql mysql -D zimbra_logger -P 7307
 
If your logger database is running on a different port, change it via the -P parameter.  This information is available in the /opt/zimbra/conf/my.logger.cnf file.
 
Execute the password change:
 
><code>>update user set password=PASSWORD('newpasswd') where user='root';</code>
>flush privileges
>(quit or ctrl+d)
 
Changing "newpasswd" with your desired root password.
 
Now make sure that the new password you have selected matches the value of mysql_logger_root_password:
 
> zmlocalconfig -s -m nokey mysql_logger_root_password
 
If it doesn't, adjust the mysql_logger_root_password parameter in /opt/zimbra/conf/localconfig.xml
 
Once the passwords match, we must clean up.  As the zimbra user, shutdown the logmysql service:
> logmysql.server stop
 
Now, as root, edit the logmysql.server and remove the previously added --skip-grant-tables option.
 
After that, start the service:
 
> logmysql.server start
 
And your set!
 
 
'''zimbra logger account'''
 
For the zimbra logger user, we can adjust the password via the zmmylogpasswd command (as zimbra):
  >zmmylogpasswd newpasswd
 
Of course changing "newpasswd" with your desired password.
 
== Resetting the MySQL Password ==
 
First, we need to make sure that Zimbra is stopped.
 
Try running:
 
>su zimbra
 
>zmcontrol stop
 
Just to be safe, you can make sure that all Zimbra services are stopped:
 
>ps auxww | grep zimbra
 
>ps auxww | grep mysql
 
Kill any left over processes.
 
Now, we can reset the passwords:
 
'''root account'''<br>
For the root mysql account, you need to start the mysql logger instance with the --skip-grant-tables option.  As root, modify the /opt/zimbra/bin/mysql.server file:
 
 
''Change:''
 
<code>
'start') <br>
<nowiki>#--defaults-file must be first argument</nowiki> <br>
cd ${mysql_directory}; \ <br>
${mysql_directory}/bin/mysqld_safe \ <br>
--defaults-file=${mysql_mycnf} \ <br>
--ledir=${mysql_directory}/bin & <br>
;; <br>
</code>
 
''To:''
 
<code>
'start') <br>
<nowiki># --defaults-file must be first argument</nowiki> <br>
cd ${mysql_directory}; \ <br>
${mysql_directory}/bin/mysqld_safe \ <br>
--defaults-file=${mysql_mycnf} \ <br>
<b>--skip-grant-tables \ </b><br>
--ledir=${mysql_directory}/bin & <br>
;;<br>
</code>
 
Save the file & start the server as the zimbra user:
>su - zimbra
>mysql.server start
 
Use the mysql command to connect to the logger database:
 
>mysql mysql  -P 7306
 
If your mysql database is running on a different port, change it via the -P parameter.  This information is available in the /opt/zimbra/conf/my.cnf file.
 
Execute the password change:
 
><code>>update user set password=PASSWORD('newpasswd') where user='root';</code>
 
Optionally force-change the zimbra user password:
 
  ><code>>update user set password=PASSWORD('newzimbrapasswd') where user='zimbra';</code>
 
Changing "newpasswd" or "newzimbrapasswd" with your desired passwords.
 
Then:
 
>flush privileges
>(quit or ctrl+d)
 
Now make sure that the new password you have selected matches the value of mysql_root_password:
 
> zmlocalconfig -s -m nokey mysql_root_password
 
If it doesn't, adjust the mysql_root_password parameter in /opt/zimbra/conf/localconfig.xml
 
Once the passwords match, we must clean up.  As the zimbra user, shutdown the mysql service:
> mysql.server stop
 
Now, as root, edit the mysql.server file and remove the previously added --skip-grant-tables option.
 
After that, start the service:
 
> mysql.server start
 
And your set!
 
 
'''zimbra account'''
 
For the zimbra luser, we can adjust the password via the zmmypasswd command (as zimbra):
  >zmmypasswd newpasswd
 
Of course changing "newpasswd" with your desired password.

Latest revision as of 19:39, 12 May 2009

Jump to: navigation, search