如何用源码编译安装MySQL8.0.20


这篇文章主要讲解了如何用源码编译安装MySQL8.0.20,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。1 概述本文章主要讲述了如何从源码编译安装MySQL社区版8.0.20,首先会介绍一些编译安装的相关知识,然后开始编译安装2 源码编译安装的相关知识2.1 make与configuremake是一个编译的命令,会在当前的目录下寻找Makefile这个文件,Makefile文件记录了源代码如何编译的详细信息。而configure是由软件开发商编写的一个检测程序检测用户的开发环境,检测完毕后生成Makefile文件。通常,configure会检测如下内容:2.2 Tarball文件Tarball文件其实就是将源代码以tar打后压缩的文件。通常使用gzip进行压缩,一般扩展名为.tar.gz或.tgz,不过由于bzip2以及xz等技术压缩效果比gzip好,因此文件名也会变成扩展名也会变成.tar.bz2或.tar.xz之类的。通常一个Tarball文件有:2.3 源码编译安装相关组件2.3.1 编译器需要有编译器才能进行编译操作,通常使用的是gcc。2.3.2 make+autoconfig以Tarball形式发布的软件,为了简化编译流程,通常需要make来根据目标文件文件的依赖性进行编译,但是由于make需要Makefile,因此需要autoconfig生成Makefile。2.3.3 函数库需要内核提供的库以及相关的include文件。2.4 静态库与动态库函数库分为动态库与静态库两种类型,绝大部分放在/lib与/lib64中。2.4.1 静态库扩展名为.a,编译时会直接整合到执行程序中,所以利用静态库生成的文件会比较大一些,编译后的可执行文件可以直接运行,无需依赖外部函数库。另外升级难度较大,因为是直接整合进程序中,升级了静态库的话需要重新编译。2.4.2 动态库扩展名为.so,在编译时不像静态库一样,动态库在程序中只有一个指针,当可执行程序需要用到函数库的功能时,才会读取函数库来使用,生成的可执行文件会比较小一点,但是不能独立执行编译出来的程序。另外升级比较方便,不需要重新编译,因为执行文件会直接指向新的函数库文件。2.5 编译安装的一般步骤注意,以上步骤都是有顺序的,而且前一个步骤执行失败则后一个步骤也不能执行,也就是说需要前一个步骤执行成功才能进行下一步的操作。完成以上六步就能编译安装了,一般需要进行一些后续处理,比如,添加可执行文件路径到PATH,添加头文件与库文件到/usr/include与/etc/ld.so.conf.d中,添加联机帮助文件到/etc/man_db.conf中。2.6 编译安装前的心理准备这里是最后的提示了,未安装之前还可以ctrl+w关闭本页面,避免无数的痛苦。
编译安装最常见的问题就是版本与依赖的问题,版本问题容易处理,可以通过包管理器进行升级或者手动升级,至于依赖问题,包管理器安装的话很容易,编译安装的话会非常头疼,因为不知道某个依赖下面还需要安装多少个依赖。
所以,需要准备充足的时间,还有充分的耐心,去解决无数的问题,才能成功进行编译安装MySQL与Workbench这种大型软件。
不废话了,开始吧。3 安装MySQL3.1 安装依赖MySQL所需依赖如下:3.2 包管理器安装笔者的Debian系,使用apt即可:RedHat8.x:RedHat7.x:其他自行搜索3.2 编译安装若不想用包管理器安装,可以使用编译安装的方式。
欢迎来折腾。3.2.1 安装cmake3.2.2 安装make没有编译器的情况下无法编译安装,使用软件包安装即可,笔者的Debian系,直接使用apt:3.2.3 安装gcc3.2.4 安装openssl3.2.5 下载boost官网戳这里。
需要的版本为1.70.0。目前最新的版本为1.73.0,理论上来说更新的版本应该可以,这里下载的是1.70.0。如果不手动下载boost库的话可以在使用cmake生成Makefile时设置DDOWNLOAD_BOOST为1进行下载。下载后解压既可。3.2.6 安装ncurses3.2.7 安装bison3.2.8 安装git3.2.9 后续处理修改PATH:使动态库生效:权限不足请加sudo。3.3 下载MySQL社区版官网这里。这里不知道第一个与第二个有什么区别,因为笔者两个都试过都能编开发云主机域名译安装成功。虽然上面写着第二个带Boost头,但是貌似没什么用。这里用的是第一个。
校验(可选):3.4 生成Makefile其他更多参数请使用查看。3.5 编译与安装或笔者试过了make -j 6,失败,无奈换成了make。
make的速度和make -j还是很大差距的。
编译好之后,建议测试一下:然后安装:3.6 后续配置3.6.1 用户组与用户新建用户组与用户,同时修改用户数据目录权限:数据目录根据需要修改,若后面出现不可写错误请把权限改为777。3.6.2 配置文件配置文件为my.cnf,可以放在下,读取顺序从上到下。笔者安装后默认在/etc/mysql/my.cnf,这个是全局配置,~/.my.cnf是用户特定配置,这里直接修改/etc/mysql/my.cnf:其中[mysqld]下面是新添加的字段,数据目录自行修改。
建议字符集改为utf8mb4,因为utf8在MySQL中指的是utf8mb3,支持的utf8编码最大字符长度为3字节,如果遇到4字节的宽字符就会插入异常。三字节的utf8最大能编码的Unicode字符为0xffffff,也就是基本多文种平面,Emoji和很多不常用的汉字都不能存储。而utf8mb4是5.5.3之后才支持的,为了兼容性考虑应该统一使用utf8mb4。3.7 初始化修改环境变量:使用或然后开启ssl与rsa支持(可选):最后开启服务:3.8 修改密码使用root登录,如果使用insecure初始化:使用initialize初始化:输入初始化出现的密码即可。
然后修改密码:3.9 测试使用自带的mysqlshow与mysqladmin:3.10 收尾工作3.10.1 别名这样输入md就可以启动MySQL服务了。3.10.2 安装MycliMycli是一个MySQL命令行客户端工具,具有自动补全和语法高亮的功能。
使用pip安装即可,python2请使用python3请使用找不到pip请安装:然后使用mycli进入数据库:愉快地使用补全吧!看完上述内容,是不是对如何用源码编译安装MySQL8.0.20有进一步的了解,如果还想学习更多内容,欢迎关注开发云行业资讯频道。

相关推荐: 数据库管理系统是否属于应用软件

数据库管理系统是否属于应用软件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。不属于,数据库管理系统属于系统软件。系统软件主要包括:操作系统、语言处理程序、数据库管理系统和服务程序等…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 06/04 18:47
下一篇 06/04 18:47

相关推荐