CentOS7下安装MySQL的囧途

2 篇文章 0 订阅
1 篇文章 0 订阅


想练下MySQL开发,于是打算在虚拟机上安装MySQL,本以为会一路顺风,没想到却是囧途啊。


首先到官网下载了tar包,解压后有一堆东西,看着好头疼



不过通过文件名还是能很清楚的分辨出各包的作用,最后决定装server+client,最基本的。


由于CentOS上有个mariadb,会与MySQL冲突,于是先卸载掉。过程不多说了。


然后开始安装server:使用rpm -ivh 安装,接着出现下面问题:

[root@localhostDownloads]# rpm -ivh MySQL-server-5.6.23-1.linux_glibc2.5.x86_64.rpm

Preparing...                         ################################# [100%]

Updating /installing...

  1:MySQL-server-5.6.23-1.linux_glibc#################################[100%]

FATAL ERROR: pleaseinstall the following Perl modules before executing /usr/bin/mysql_install_db:

Data::Dumper


居然说没有Perl modules,百度后说要yum install -y perl-Module-Install.noarch,照做后又报错,说没有urlgrabber.grabber。

经过各种原因排查,终于确定是之前更新Python导致的。

更改yum和/usr/libexec/urlgrabber-ext-down开头的python版本为系统原来的版本。保存后重新运行,一切OK了。


接下来 mysql_install_db --user=mysql

开启mysql服务,一切正常。  接下来把客户端安装好就OK 了。


可是真的如此吗。。。


编写一个简单测试代码:

#include <mysql.h>
int main()
{
return 0;
}

在编译时发现找不到头文件和相关库,在各目录也没有找到。于是想是不是少安装了什么。果然在之前的压缩包里还有个MySQL-devel-5.6.23-1.linux_glibc2.5.x86_64.rpm ,装之

/bin下出现个mysql_config ,运行了下,其作用很明显:

[root@localhost mysql_test]# mysql_config

Usage: /usr/bin/mysql_config [OPTIONS]
Options:
        --cflags         [-I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -fPIC  -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1]
        --cxxflags       [-I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -felide-constructors  -fPIC  -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1]
        --include        [-I/usr/include/mysql]
        --libs           [-L/usr/lib64 -lmysqlclient -lpthread -lm -lrt -ldl]
        --libs_r         [-L/usr/lib64 -lmysqlclient -lpthread -lm -lrt -ldl]
        --plugindir      [/usr/lib64/mysql/plugin]
        --socket         [/var/lib/mysql/mysql.sock]
        --port           [0]
        --version        [5.6.23]
        --libmysqld-libs [-L/usr/lib64 -lmysqld -lpthread -lm -lrt -lcrypt -ldl -laio]
        --variable=VAR   VAR is one of:
                pkgincludedir [/usr/include/mysql]
                pkglibdir     [/usr/lib64]
                plugindir     [/usr/lib64/mysql/plugin]


重新编译cpp:

g++ $(mysql_config --include) $(mysql_config --libs) mysql_test.cpp


终于OK了。事不大,东西不多,但是有些闹心

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值