LINUX 环境下源码方式安装mysql5.6

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 1.下载mysql源码: wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.26.tar.gz 备注:至于想以什么方式下载都无所谓,总之得到源码就可以了~ 2.确认需要的开发工具的版本,都要满足mysql安装版本的需要  Building GCC requires GMP 4.2+, MPFR 2.4.0
1.下载mysql源码:
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.26.tar.gz

备注:至于想以什么方式下载都无所谓,总之得到源码就可以了~

2.确认需要的开发工具的版本,都要满足mysql安装版本的需要

 Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+. cmake 3.75+, gcc 4.21+, perl  if you intend to run test scripts
3.创建mysql的安装目录 mysql

mkdir mysql526

备注:一般在虚拟机、测试环境、开发机、服务器上安装的时候都不会直接使用root权限进行安装,因为使用普通用户安装会降低服务器的风险,但是同时也带来了一个问题,就是对于默认的安装路径下我们没有读写权限,这时候按照官方简易的文档安装就会失败,或者出现各种各样的无法连接、无法启动等错误

此处的方法是用普通用户权限进行安装

4.创建几个相应的文件夹:tmp, var, etc,

cd mysql526
mkdir tmp var etc

5.执行cmake创建makefile
cmake . -DCMAKE_INSTALL_PREFIX=/home/work/mysql526 -DEFAULT_CHARSET=utf8 -DEFAULT_COLLATION=utf8_general_ci 
-DMYSQL_UNIX_ADDR=/home/work/mysql526/tmp/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DTMPDIR=/home/work/mysql526/log/

参数介绍:

-DCMAKE_INSTALL_PREFIX:相当于安装的根目录,其余的一些配置,都会安装在PREFIX/下。比如PREFIX/BIN,等等
-DEFAULT_CHARSET:默认编码
-DEFAULT_COLLATION=utf8_general_ci:默认排序方式
-DMYSQL_UNIX_ADDR=/home/work/mysql526/tmp/mysql.sock:连接mysql使用的socket文件,此处很关键!
-DWITH_INNOBASE_STORAGE_ENGINE=1:使用innodb引擎
-DTMPDIR=/home/work/mysql526/log/:指定tmp文件夹路径,一般tmp中包含mysql.sock,log,pid等配置
-MYSQL_TCP_PORT=3306:TCP/IP port number, and Unix socket file can be changed at server startup with the --basedir, --port, and --socket options for mysqld. Where applicable,

注:此处如果报错:可以查看CMakeCache.txt, CMakeFiles/CMakeError.log  and  CMakeFiles/CMakeOutput.log   under the  build directory
解决错误后,执行rm CMakeCache.txt,然后再次cmake重新配置
注:如果MYSQL_MAINTAINER_MODE 配置是enable的,它会将warn变成error,可以disable这个选项,再编译
doc:If compilation fails, check whether the    MYSQL_MAINTAINER_MODE option is enabled. This mode causes  compiler warnings to become errors, so disabling it may  enable compilation to proceed.

5.1cmake介绍:此处编译使用的是cmake工具

下载地址:https://cmake.org/download/

https://cmake.org/files/v3.4/cmake-3.4.0-rc1.tar.gz

6.执行make编译:
make
注:如果此处出错,需要先执行make clean,再执行rm CMakeCache.txt,然后在重新cmake----make
注:如果make失败:并且提示了如下信息的任意一种:表明make的版本过低,升级GNU的make去吧。3.75+
#1:make: Fatal error in reader: Makefile, line 18:    Badly formed macro assignment
#2:pthread.h: No such file or directory
#3:make: file `Makefile' line 18: Must be a separator (:
7.执行安装
make install
注:make install 也可以指定路径,但是如果你已经在cmake的时候指定了 -DCMAKE_INSTALL_PREFIX参数,就不要在这里再指定了。。 make install DESTDIR="/some/absolute/path"

8.准备mysql的配置文件:关于my.cnf的配置请参考下一章,这里先凑合用
cp support-files/my-default.cnf etc/my.cnf     //****my-default.cnf是空白的,都得自己配置,如果my-medium.cnf要是没有,就去偷一个吧
或者   cp /home/work/mysql526/support-files/my-medium.cnf /home/work/mysql526/etc/my.cnf
9.编辑my.cnf,配置相关参数的路径
# The MySQL server
     26 [mysqld]
     27 port        = 3306
     28 /home/work/mysql526/tmp/mysql.sock
     29 log-error   =/home/work/mysql526/log/mysql.err
     30 pid-file    =/home/work/mysql526/tmp/mysql.pid

10. 配置环境变量
TMPDIR=/home/work/mysql5/tmp/
MYSQL_UNIX_PORT=/home/work/mysql5/tmp/mysql.sock
export TMPDIR MYSQL_UNIX_PORT
11.数据初始化:需要Perl。如果没有也需要安装,yum install perl  然后还得安装yum install perl-Data-Dumper
记得指定参数,要读取我们刚刚配置的my.cnf配置文件,否则白折腾了,user就是你的用户名,数据初始化结束后,去data目录下能看到多了test以外的数据文件
scripts/mysql_install_db --defaults-file=/home/work/mysql526/etc/my.cnf --user=work --basedir=/home/work/mysql526/ --datadir=/home/work/mysql526/data/

13.安全 守护进程 启动msyql ------ 至于为啥带my.cnf参数,请参考下一章
--help :  带my.cnf参数启动,配置各种权限     //**这个还必须要指定这个配置参数
/home/work/mysql526/bin/mysqld_safe --defaults-file=/home/work/mysql526/etc/my.cnf
14.设置密码
1./home/work/mysql526//bin/mysqladmin -u root password 设置密码:xxx123  
2./home/work/mysql526//bin/mysqladmin -u root -h cp01-vm-epc-wiseapp5.epc.com password 设置密码:xxx123
15.执行product环境清理工作,提高安全性
在product环境执行: /home/work/mysql526//bin/mysql_secure_installation
16.配置指定的IP可以访问: 配置 10.126.107.119 使用root,xxx123连接,
GRANT ALL PRIVILEGES ON *.* TO 'root'@'   10.126.107.119' IDENTIFIED BY 'xxx123' WITH GRANT OPTION;
flush privileges;  //---别忘记了。。否则又蒙圈
注: For boolean options, the value may be specified as 1 or ON to enable the option, or as 0 or OFF to disable the option
17.mysql -uroot -p .............没了。。。。附加一页文档:   http://dev.mysql.com/doc/internals/en/cmake-howto-detailed.html

18.常见问题:
1. 报错:CMAKE_CXX_COMPILER-NOTFOUND
需要安装g++
yum install g++
2. 报错:Curses library not found
yum install ncurses-devel

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
20天前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
87 4
|
8天前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
64 11
|
24天前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
112 4
MySQL源码编译安装
|
24天前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
145 4
MySQL二进制包安装
|
24天前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
244 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
24天前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
128 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
21天前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
189 5
|
24天前
|
Ubuntu 关系型数据库 MySQL
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
本文详细介绍了在Ubuntu 24.04、22.04、20.04及Debian 12系统上,通过离线DEB包安装MySQL 8.0和8.4版本的完整步骤。涵盖下载地址、依赖处理、dpkg安装顺序、配置方法及服务启动验证,确保用户可顺利部署MySQL数据库。
236 0
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
|
安全 Linux 测试技术
配置Goby工具环境(win,linux,macOS)
配置Goby工具环境(win,linux,macOS)
1330 2
|
5月前
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
404 11