因跨机房访问数据库,需要通过外网访问mysql数据库,安全考虑连接时需要进行SSL加密。问题如下:通过命令行ssl外网连接数据库成功:[xxxx@EM-F4W9B92]# mysql -u xxx -P 3310 -h xxxxx -p  --ssl-key=/opt/trader/client-key.pem --ssl-cert=/opt/trader/client-cert.pem
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 113278
Server version: 5.7.10-log Source distribution改用C程序实验结果,失败了:SSL error: Unable to get certificate from '/opt/trader'
error:SSL connection errorC程序代码如下:mysql_ssl_set(pConn, m_keySSL.c_str(), m_cert.c_str(), m_ca.c_str(), NULL, NULL);
MYSQL* pTmp = mysql_real_connect(pConn, ip.c_str(), user.c_str(), pwd.c_str(), name.c_str(), port, NULL, 0 );其中
m_keySSL=/opt/trader,m_cert=/opt/trader,m_ca=/opt/trader
或者在绝对路径后面加上文件名,也是报同样的错误,请高手指点!! 
SSL error: Unable to get certificate from '/opt/trader'  证书都放在/opt/trader目录下,mysql命令行都连接成功, 为什么还提示找不到证书?网上查阅的资料:
 使用mysql_ssl_set(),可采用SSL建立安全连接。必须在mysql_real_connect()之前调用它。除非在客户端库中允许了OpenSSL支持,否则mysql_ssl_set()不作任何事。Mysql是从mysql_init()返回的连接处理程序。
· key是key文件的路径名。
· cert是证书文件的路径名。
· ca是证书授权文件的路径名。
· capath是指向目录的路径名,该目录中包含以pem格式给出的受信任SSL CA证书。
· cipher是允许密码的列表,用于SSL加密。