mysql客户端工具静态化

在linux下使用mysql的客户端工具非常简单方便,

例如我们可以mysql -h hostname -u username -p password -D database连接mysql,执行某个语句只需-e"SQL" 即可。

但是,mysql这个工具默认安装是动态的,执行时需要export LD_LIBRARY_PATH=xxxxx/lib/mysql,

libdbug.a  libmyisam.a     libmysqlclient.a   libmysqlclient.so     libmysqlclient.so.15.0.0  libmysys.a
libheap.a  libmyisammrg.a  libmysqlclient.la  libmysqlclient.so.15  libmystrings.a            libvio.a

所以ldd mysql时才有:libmysqlclient.so.15 => xxxxx/lib/mysql/libmysqlclient.so.15,

所以mysql工具放到其他机器上时就要和lib一起打包了,先export再执行,不是很方便。


现在,我们可以编译出一个不使用动态库的mysql工具,安装mysql(只是为了编译一个工具)时,

只需configure时添加参数--with-client-ldflags=-all-static,安装目录随便,make && make install后,

bin/mysql既是全静态的。

ldd mysql时,not a dynamic executable。

使用方法和动态一样,不用打包,不用export了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章