【問題描述】
在配置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、再次測試連接。