【问题描述】
在配置CDH集群时,Hue测试连接数据库报了如下的错误:
【问题原因】
查看CDH服务节点的日志信息,发现如下错误:
[02/Apr/2020 08:29:30 +0000] settings DEBUG DESKTOP_DB_TEST_NAME SET: /opt/cloudera/parcels/CDH-6.3.1-1.cdh6.3.1.p0.1470567/lib/hue/desktop/desktop-test.db
[02/Apr/2020 08:29:30 +0000] settings DEBUG DESKTOP_DB_TEST_USER SET: hue_test
Traceback (most recent call last):
File "/opt/cloudera/parcels/CDH-6.3.1-1.cdh6.3.1.p0.1470567/lib/hue/build/env/bin/hue", line 14, in <module>
load_entry_point('desktop', 'console_scripts', 'hue')()
File "/opt/cloudera/parcels/CDH-6.3.1-1.cdh6.3.1.p0.1470567/lib/hue/desktop/core/src/desktop/manage_entry.py", line 225, in entry
raise e
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: libmysqlclient.so.18: cannot open shared object file: No such file or directory.
Did you install mysqlclient or MySQL-python?
通过报错,我们很明显的发现是因为libmysqlclient.so.18这个文件被删除了导致的这个错误。
【解决办法】
1、另外寻找一台机器,将/usr/lib64/mysql/目录下的libmysqlclient.so.18分发到此机器的/usr/lib64/mysql/目录下。
2、使用如下命令,对libmysqlclient.so.18做软链接。
ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib64/mysql/libmysqlclient.so.18
3、在/etc/ld.so.conf文件后追加libmysqlclient.so.18所在的目录,即/usr/lib64/mysql
4、运行以下命令,使其生效。
ldconfig
5、再次测试连接。