编译安装来mysql5.5.14,装完后用全路径/usr/local/mysql/bin/mysql -u root -p可以进入数据库
但是配置来环境变量之后就提示
[root@localhost /]# mysql -u root -p
mysql: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
试了建立软链接也不行/usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
我的/usr/local/mysql/lib/有的是libmysqlclient.so.18
为什么它启动时找的是libmysqlclient.so.16

解决方案 »

  1.   

    你在执行一下
    这个语句
    ldconfig
    就可以拉
      

  2.   

    那么,把你的mysql记录贴出来,分析一下看看,好象在数据库中同一个目录下。
      

  3.   

    [root@localhost /]# ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.16
    [root@localhost /]# ldconfig
    [root@localhost /]# mysql -u root -p
    mysql: /usr/lib/libmysqlclient.so.16: no version information available (required by mysql)
    mysql: relocation error: mysql: symbol disabled_my_option, version libmysqlclient_16 not defined in file libmysqlclient.so.16 with link time reference
      

  4.   


    ln -s /usr/local/mysql/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
    ldconfig
    这样不行吗
      

  5.   

    /usr/local/mysql/lib下只有libmysqlclient.so.18
    所以链接创建不了
    我发现我的log下面没有文件
      

  6.   

    没有16有这些
    -rw-r--r--.  1 mysql mysql 3973098  7月 20 05:46 libmysqlclient.a
    lrwxrwxrwx.  1 mysql mysql      16  7月 20 05:50 libmysqlclient_r.a -> libmysqlclient.a
    lrwxrwxrwx.  1 mysql mysql      17  7月 20 05:50 libmysqlclient_r.so -> libmysqlclient.so
    lrwxrwxrwx.  1 mysql mysql      17  7月 20 05:50 libmysqlclient_r.so.18 -> libmysqlclient.so
    lrwxrwxrwx.  1 mysql mysql      17  7月 20 05:50 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so
    lrwxrwxrwx.  1 mysql mysql      20  7月 20 05:50 libmysqlclient.so -> libmysqlclient.so.18
    lrwxrwxrwx.  1 mysql mysql      24  7月 20 05:50 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
    -rwxr-xr-x.  1 mysql mysql 1526510  7月 20 05:46 libmysqlclient.so.18.0.0
    -rw-r--r--.  1 mysql mysql    6916  7月 20 05:44 libmysqlservices.a
    drwxr-xr-x.  3 mysql mysql    4096  7月 20 05:50 plugin
      

  7.   

    ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
    ldconfig
    这样呢
      

  8.   

    110729 09:34:11 mysqld_safe mysqld from pid file /var/mysql/data/localhost.localdomain.pid ended
    110728 18:35:15 mysqld_safe Starting mysqld daemon with databases from /var/mysql/data
    110728 18:35:16 InnoDB: The InnoDB memory heap is disabled
    110728 18:35:16 InnoDB: Mutexes and rw_locks use GCC atomic builtins
    110728 18:35:16 InnoDB: Compressed tables use zlib 1.2.3
    110728 18:35:16 InnoDB: Initializing buffer pool, size = 128.0M
    110728 18:35:16 InnoDB: Completed initialization of buffer pool
    110728 18:35:16 InnoDB: highest supported file format is Barracuda.
    110728 18:35:16  InnoDB: Waiting for the background threads to start
    110728 18:35:17 InnoDB: 1.1.8 started; log sequence number 1595685
    110728 18:35:17 [Note] Event Scheduler: Loaded 0 events
    110728 18:35:17 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
    Version: '5.5.14'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution
      

  9.   

    日志文件也没错呀。
    照道理来说
    ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
    ldconfig
    应该是没问题了。
    你执行上面的语句,是否有异常?
      

  10.   

    可能是因为之前centos系统自带的mysql的原因,而我把系统自带的那些mysql都删来,但是输入mysql时,环境变量还是去找之前被我删除的mysql了,请问怎么改?
      

  11.   

    原来是和系统自带的mysql冲突来,卸来自带的就ok了
      

  12.   

    我也出现类似情况,我原来是mysql5.0的,后面全删了,再装lnmp0.8,libmysqlclient.so.16有,但系统总是去找libmysqlclient.so.15,具体怎么解决的?
      

  13.   

    原来是以前的文件/usr/bin/mysql没替换的原因
    用以下二条命令搞定了。
    cd /usr/bin
    mv mysql mysql.rpmbak
    ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
      

  14.   

    参考了这个,才想到解决办法的。
    http://hi.baidu.com/applezhang1/blog/item/c2d4d46169fc7c5aeaf8f884.html