centos7下源码安装mysql5.7.16
下载mysql源码包
http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.16.tar.gz
二、安装约定:
用户名:mysql
安装目录:/data/mysql
数据库目录:/data/mysql/data
三、安装准备
1、添加用户
> useradd -s /sbin/nologin mysql
2、建立目录
> mkdir /data/mysql
3、改变目录拥有者和所属者
> chown -R mysql:mysql /data/mysql
4、安装编辑所需的文件
> yum install gcc gcc-c++ cmake bison-devel ncurses-devel libaio libaio-devel
(*mysql5.7.5以上版本需要安装boost)
> yum install boost boost-devel
5、解压源码包
> tar -xf mysql-5.7.16.tar.gz
四、编译安装
> cd /data/mysql-5.7.16
> cmake \
-DMYSQL_USER=mysql \
-DCMAKE_INSTALL_PREFIX=/data/mysql \
-DMYSQL_DATADIR=/data/mysql/data \
-DSYSCONFDIR=/data/mysql \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DINSTALL_PLUGINDIR=plugin \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/boost
(*注意,如果出错,需删除CMakeCache.txt,重新运行配置)
关于上面参数的解释如下:
#mysql用户名
-DMYSQL_USER=mysql
#安装路径
-DCMAKE_INSTALL_PREFIX=/data/mysql
#数据文件存放位置
-DMYSQL_DATADIR=/data/mysql/data
#my.cnf路径
-DSYSCONFDIR=/data/mysql
#支持MyIASM引擎
-DWITH_MYISAM_STORAGE_ENGINE=1
#支持InnoDB引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1
#支持Memory引擎
-DWITH_MEMORY_STORAGE_ENGINE=1
#插件文件及配置路径,注意这里是相对路径,相对于mysql安装路径
-DINSTALL_PLUGINDIR=plugin
#快捷键功能(我没用过)
-DWITH_READLINE=1
#连接数据库socket路径
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock
#端口
-DMYSQL_TCP_PORT=3306
#允许从本地导入数据
-DENABLED_LOCAL_INFILE=1
#安装支持数据库分区
-DWITH_PARTITION_STORAGE_ENGINE=1
#安装所有的字符集
-DEXTRA_CHARSETS=all
#默认字符
-DDEFAULT_CHARSET=utf8
#校验字符
-DDEFAULT_COLLATION=utf8_general_ci
#会自动下载boost
-DDOWNLOAD_BOOST=1
#指定boost目录
-DWITH_BOOST=/usr/local/boost
> make && make install
复制配置文件
> cp /data/mysql/support-files/my-default.cnf /data/mysql/my.cnf
初始化数据库
> /data/mysql/bin/mysqld \
--defaults-file=/data/mysql/my.cnf \
--initialize \
--user=mysql \
--basedir=/data/mysql \
--datadir=/data/mysql/data \
如果出现如下信息:
unknown variable 'defaults-file=/data/mysql/my.cnf'
请保证--defaults-file配置选项在最前面。
如果出现如下信息:
[ERROR] --initialize specified but the data directory has files in it. Aborting.
请保证的你的datadir目录下为空,如果有文件则删除。
mysql5.7版本通过--initialize安装会随机生成root密码,请注意保存。
如果希望生成空密码请使用--initialize-insecure配置。
修改mysql目录拥有者
> chown -R mysql:mysql /data/mysql
五、配置mysql配置文件my.cnf
由于我们在编译安装mysql的时候设置了它的配置文件目录为/data/mysql,所以删掉/etc/my.cnf。
以免受影响。
> rm -rf /etc/my.cnf
> vi /data/mysql/my.cnf
[client]
default-character-set = utf8
port = 3306
socket = /data/mysql/mysql.sock
[mysql]
default-character-set = utf8
[mysqld]
skip-name-resolve
basedir = /data/mysql
datadir = /data/mysql/data
port = 3306
server_id = 10
socket = /data/mysql/mysql.sock
character-set-server = utf8
max_connections = 200
default-storage-engine = INNODB
log-bin=mysql-bin
为mysql添加开机启动
> cp /data/mysql/support-files/mysql.server /etc/init.d/mysqld
> chmod 755 /etc/init.d/mysqld
> chkconfig --add mysqld
> service mysqld start
为mysql添加环境变量
> echo "export PATH=/data/mysql/bin/:$PATH" >> /etc/profile
> source /etc/profile
> mysql -uroot -p
> set password=password('123456');
> alter user 'root'@'localhost' password expire never;
> flush privileges;
centos7下源码安装mysql5.7.16的更多相关文章
- CentOS7下源码安装mysql5.6
目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置 单实例配置方法 添加防火墙 ...
- CentOS7 实战源码安装mysql5.7.17数据库服务器
CentOS7 实战源码安装mysql5.7.17数据库服务器 简介:实战演练mysql数据库服务器的搭建 mysql简介: mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的 ...
- CentOS7 下源码安装 python3
CentOS 7 下源码安装 python3 在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下: 1. 首先安装python3.6可能使用的依 ...
- CentOS7下源码安装5.6.23
清理CentOS7下的MariaDB. [root@localhost ~]#rpm -qa | gremp mariadb [root@localhost ~]# rpm -e --node ...
- CentOS6下源码安装mysql-5.6.25
1.1.系统环境检查 1)检查系统版本 mkdir -p /server/tools/ cd /server/tools/ cat /etc/redhat-release 2)配置域名解析 vim / ...
- Linux下源码安装MySQL-5.6.25
从mysql-5.5起,mysql源码安装开始使用cmake了,因此我们得先安装cmake,配置安装目录./configure --perfix=/.....的时候和以前的会有些区别. 一.安装cma ...
- CentOS6.5下源码安装MySQL5.6.35
接上一篇文章使用RPM包安装MySQL,确实很方便.但是安装后却不知道各文件保存在哪个文件夹下!尝试使用源码安装~本文主要参考:CentOS 6.4下编译安装MySQL 5.6.14一.卸载旧版本 . ...
- CentOS 编译源码安装MySQL-5.6.16
mysql5.6.16的安装和之前的5.5.5.1有些不同,编译的时候不再使用./configure来进行了,使用了cmake命令来进行编译项目. 1.准备编译环境 yum -y installmak ...
- linux6下源码安装mysql5.6
概述:CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14.正文:一:卸载旧版本使用下面的命令检查是否安装有MySQL Serverrpm ...
随机推荐
- C# AtomicLong
using System; using System.Threading; /// <summary> /// Provides lock-free atomic read/write u ...
- delphi WebBrowser的使用方法详解(五)-难点释疑
网页代码:<SELECT id=fy onchange=TouchRefresh(1) name=fy> <OPTION selected value=15>每頁顯示15筆&l ...
- maven快速入门之安装
maven是基于项目对象模型(pom) 可以通过y一小段描述信息来管理项目的构建,报告,和文档的软件项目管理工具. 覆盖编译,测试运行清理构建周期,提供仓库的概念,统一帮助管理项目. 下载:http: ...
- ORM PetaPoco 框架的 CRUD 操作
PetaPoco 的查询操作 public IEnumerable<T> GetAll(string sqlString, object[] obj) { try { IEnumerabl ...
- ansible的安装与使用
ansible的特点: 1. 基于ssh运行 2. 无需客户端 安装ansible 这里提供四种安装方式,根据自己的需要任选一种即可 1.1使用yum安装 yum install epel-relea ...
- spring Ioc和DI
spring的“控制反转”和“依赖注入”,个人看来是一个意思. 传统java程序中,使用一个对象的时候,都需要先new Object()创建一个新对象,才能使用.对象的控制权,在程序手里. 使用spr ...
- 揭秘Java架构技术体系
Web应用,最常见的研发语言是Java和PHP. 后端服务,最常见的研发语言是Java和C/C++. 大数据,最常见的研发语言是Java和Python. 可以说,Java是现阶段中国互联网公司中,覆盖 ...
- CentOS 7 基础命令安装
https://my.oschina.net/u/1428349/blog/288708 1. ifconfig安装 > yum install net-tools 临时变量(可以直接使用sbi ...
- 基于OpenGL编写一个简易的2D渲染框架-07 鼠标事件和键盘事件
这次为程序添加鼠标事件和键盘事件 当检测到鼠标事件和键盘事件的信息时,捕获其信息并将信息传送到需要信息的对象处理.为此,需要一个可以分派信息的对象,这个对象能够正确的把信息交到正确的对象. 实现思路: ...
- ubuntu upstart启动流程分析
ubuntu自从6.10版本之后就使用了较新的upstart机制来进行系统的初始化. upstart是一种基于事件驱动的服务启动机制,可以使多个系统任务在保持依赖关系的前提下并发启动(据说这样这样启动 ...