源码编译MYSQL遇到的几个小问题-创新互联

        闲来无聊,顺手练习一下好久没碰过的MYSQL,于是决定源码编译安装MYSQL-5.7.11,练习不打紧,出了好多问题,于是乎赶紧在这里总结一下:

创新互联专业做网站、网站设计,集网站策划、网站设计、网站制作于一体,网站seo、网站优化、网站营销、软文发布平台等专业人才根据搜索规律编程设计,让网站在运行后,在搜索中有好的表现,专业设计制作为您带来效益的网站!让网站建设为您创造效益。

先下载的编译器:cmake-2.8.12.2-4.el6.x86_64.rpm  MYSQL源码包:mysql-boost-5.7.11.tar.gz

接下来进行配置,编译,安装三部曲:(区别是我把数据目录单独放在了另外一张虚拟硬盘上-DMYSQL_DATADIR=/mydata/data  -DMYSQL_UNIX_DATA=/mydata/data/mysql.sock,以实现数据和安装路径分开,并且套接字目录也定义在了数据的目录上)

第一个问题:虚拟机给的内存不够(850M),当时编译的特别慢,基本上编译到70%时就过不去了,所以解决的办法是加大内存至3000M,同时给虚拟机添加一个CPU,以加快编译速度。

第二个问题:本以为这样就能顺利的进行编译呢,可是编译的时候还是没有过去,一致卡在70%,为什么?小伙伴门,你们猜到原因了吗?

答案是:我的磁盘内存不够,用完了,使用df -h以查看,我去,磁盘已经撑爆了,所以接下来赶紧进行磁盘拉伸,直接拉到15G就差不多了,拉伸时注意一点就是当把lv扩大15G时,一定要记得把文件系统扩展一下(resize2fs  /dev/Vogroup/lv_root),要不然文件系统还是没有得到拉伸的目的。

第三个问题:就这样我静静的等待安装成功,嗯亨,最后确实成功了哈。哈哈,然后就是新建mysql用户及mysql用户组,并且将/usr/local/mysql里面文件全部更改为mysql.mysdl所属用户和组,然后初始化mysql数据库,使得建立mysql数据库,用来存放mysql数据库的元数据的,就和文件系统的元数据存放在元数据区(innode)一样,而information_schema数据库是用来存放数据库运行时产生的一些数据的。

初始化结束,就是在数据目录中/mydata/data里面的文件更改为chown mysql.mysql . -R 全部更改为mysql用户和组。于是最后启动数据服务器(/etc/init.d/mysqld  start(之前的环境变量已经改好了哦,并且从supports-file里将启动脚本mysql.server和my.cnf 分别拷贝到/etc/init.d/mysqld和/etc/my.cnf))服务是启动了,可是问题出现了:

无法通过在本机客户端通过套接字连接至mysqld服务器,报错为:Error: Can't connect to local MySQL server through socket '/mydata/data' (111)

此问题困扰我将近半个多小时,于是乎各种百度阿,此刻的我好怀念google阿,皇天不复有心人,我还是找到答案了;

问题就是:我在主配置文件中没有给[mysqld]和[client]定义出套接字的地址,而mysql默认的地址中是/var/lib/mysql中,于是赶紧的:[client]   socket=/mydata/data/mysql.sock  [mysqld] socket=/mydata/data/mysql.sock中再次重起mysqld服务器,此时在/mydata/data/里面也有套接字生成,并且也能通过本地mysql客户端连接进入mysqld主服务器中。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文名称:源码编译MYSQL遇到的几个小问题-创新互联
本文网址:http://csdahua.cn/article/idspd.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流