Monday, August 5, 2013

MySQL installation errors and solutions.

 libstdc++.so.5: cannot open shared object file


Some times while executing the "mysql_install_db" script we get this error.

While loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

You can check whether this library file is there using this command.

>ls -l /usr/lib | grep -i libstdc++

In my case it returns
lrwxrwxrwx.  1 root root       19 Jul 26 17:34   libstdc++.so.6 -> libstdc++.so.6.0.17
-rwxr-xr-x.  1 root root   926280 Sep 21  2012 libstdc++.so.6.0.17

so I download libstdc++.so.5 rpm from here and install the rpm. After that i got the result like this.

lrwxrwxrwx.  1 root root       18 Aug  5 19:00 libstdc++.so.5 -> libstdc++.so.5.0.7
-rwxr-xr-x.  1 root root   763204 May  5 05:14 libstdc++.so.5.0.7
lrwxrwxrwx.  1 root root       19 Jul 26 17:34 libstdc++.so.6 -> libstdc++.so.6.0.17
-rwxr-xr-x.  1 root root   926280 Sep 21  2012 libstdc++.so.6.0.17

Then i try the "mysql_install_db" script and it works.

Getting (errno: 13) in mysqld.log file.

Ex:
/usr/local/mysql/bin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
[ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.

Then check the "/var/lib/mysql" ownership.
> ll /var/lib/mysql
The "mysql" folder and its child's should have the mysql user ownership.

Getting (errno: 2) in mysqld.log file.

Ex:
130805 20:08:55 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2)
130805 20:08:55 [ERROR] Can't start server: can't create PID file: No such file or directory

Check whether there exist a folder called "mysqld" in /var/run and has correct permission. That folder ownership should be given to mysql user.


Before try a new installation you need to delete these 5 things.
1) /var/lib/mysql
2) /usr/bin/mysql3) /var/run/mysqld
4) /usr/local/mysql    - Symbolic link
5) /usr/local/mysql-x.x.x-m2-linux-x86_64-icc-glibc23   - The extracted folder.


Log path : /var/log/mysqld.log

No comments: