CentOS 7 源码编译安装MySQL 5.7.14
一、添加用户和组
1. 进入root:
su
2. 添加组:
groupadd mysql
3. 添加用户:
useradd -r -g mysql -s /bin/false mysql
二、安装
1. 首先到MySQL官网下载最新版的MySQL 5.7.14,进入http://dev.mysql.com/downloads/mysql/,选择Source Code下的Generic Linux。
2. 解压
tar zxvf mysql-5.7..tar.gz
3. 安装MySQL所需要的工具:
(1) CMake,一个跨平台的安装(编译)工具;
(2) gcc-c++, C++编译器;
(3) Boost库,C++语言标准库的扩展库(这里很可能会出现坑);
(4) perl,一种编程序言;
(5) bison, 一个语法分析器生成器;
(6) git,版本控制工具;
(7) curses,图形函数库。
yum install cmake gcc-c++ perl-Data-Dumper bison git ncurses-devel
4. 进入解压完的mysql-5.7.14目录,编译源码并生成makefile。
(1) 如果你的系统安装了Boost-1.59库,并且设置了环境变量,那么执行:
cmake .
(2) 如果你的系统安装了boost-1.59库,那么执行:
cmake . -DWITH_BOOST=path of boost
(3) 如果你的系统没有安装boost-1.59,那么执行:
cmake . DDOWNLOAD_BOOST= -DWITH_BOOST=/usr/local/boost
这条语句将会自动下载boost-1.59版本并安装。
(4) 如果系统提示Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH),说明cmake的这两个参数的值不对,那么你在上面的基础上加上两个参数:
-DCURSES_LIBRARY=/usr/lib/libncurses.so -DCURSES_INCLUDE_PATH=/usr/include
5. 编译:
make
6. 安装:
make install
MySQL将会安装到/usr/local/mysql目录。
7. 进入安装目录:
cd /usr/local/mysql
8. 创建data目录:
mkdir -m data
9. 创建MySQL配置文件并进行配置:
cp support-files/my-default.cnf /etc/my.cnf
gedit /etc/my.cnf
进入编辑器之后修改以下几行(注意去掉#号):
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
10. 权限设置:
chown -R mysql .
chgrp -R mysql .
11. 初始化数据库:
bin/mysqld --initialize --user=mysql
执行完这一句后mysql会分配一个初始的密码,这个密码得备份下来。
继续执行:
bin/mysql_ssl_rsa_setup
chown -R root .
chown -R mysql data
12. 启动MySQL:
bin/mysqld_safe --user=mysql &
13. 登录mysql:
bin/mysql -u root -p
14. 修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
15. 远程登录权限:
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'passwd2015';
FLUSH PRIVILEGES;
CentOS 7 源码编译安装MySQL 5.7.14的更多相关文章
- centos下源码编译安装MySQL
解压下载的软件压缩包 tar xzvf mysql-5.1.63.tar.gz 进入解压的目录 cd mysql-5.1.63/ 安装需要的依赖包 yum install gcc gcc-c++ ...
- CentOS 7 源码编译安装 Mysql 5.7
1.创建 mysql 用户,用户组,以及相关目录 /usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql mkdir -p /opt/loc ...
- CentOS源码编译安装MySQL 5.5.15
CentOS源码编译安装MySQL 5.5.15 文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...
- CentOS 6.6 下源码编译安装MySQL 5.7.5
版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...
- Centos 7源码编译安装 php7.1 之生产篇
Centos 7源码编译安装 php7.1 之生产篇 Published 2017年4月30日 by Node Cloud 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具 ...
- Shell脚本一键部署——源码编译安装MySQL及自动补全工具
Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...
- 源码编译安装 MySQL 5.5.x 实践
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- 总结源码编译安装mysql
最近在学习源码编译安装LAMP.LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit wi ...
- 源码编译安装 MySQL 5.5.x 实践(转)
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
随机推荐
- Python中四种样式的99乘法表
1.常规型. #常规型 i=1 while i<=9: j=1 while j<=i: print(''%d*%d=%2d''%(i,j,i*j),end='') i+=1 #等号只是用来 ...
- 深度学习之TensorFlow构建神经网络层
深度学习之TensorFlow构建神经网络层 基本法 深度神经网络是一个多层次的网络模型,包含了:输入层,隐藏层和输出层,其中隐藏层是最重要也是深度最多的,通过TensorFlow,python代码可 ...
- Lucene 4.4.0中常用的几个分词器
一.WhitespaceAnalyzer 以空格作为切词标准,不对语汇单元进行其他规范化处理.很明显这个实用英文,单词之间用空格. 二.SimpleAnalyzer 以非字母符来分割文本信息,并将语汇 ...
- USACO Humble Numbers
USACO Humble Numbers 这题主要是两种做法,第一种是比较常(jian)规(dan)的-------------用pq(priority_queue)维护,每次取堆中最小值(小根堆) ...
- Git详细教程(2)---多人协作开发
Git可以完成两件事情: 1. 版本控制 2.多人协作开发 如今的项目,规模越来越大,功能越来越多,需要有一个团队进行开发. 如果有多个开发人员共同开发一个项目,如何进行协作的呢. Git提供了一个非 ...
- python 面向对象的程序设计
一:什么是编程范式? 编程是程序员用特定的语法 + 数据结构 + 算法组成的代码来告诉计算机如何执行任务的过程. 如果把编程的过程比喻为练习武功,那么编程范式指的就是武林中的各种流派,而在编程的世界里 ...
- 《Language Implementation Patterns》之 强类型规则
语句的语义取决于其语法结构和相关符号:前者说明了了要"做什么",后者说明了操作"什么对象".所以即使语法结构正确的,如果被操作的对象不合法,语句也是不合法的.语 ...
- python每日一函数 - divmod数字处理函数
python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...
- Python 二分查找
(非递归实现) def binary_search(alist, item): first = 0 last = len(alist)-1 while first<=last: midpoint ...
- 在Nginx上配置多个站点
有时候你想在一台服务器上为不同的域名运行不同的站点.比如www.siteA.com作为博客,www.siteB.com作为论坛.你可以把两个域名的IP都解析到你的服务器上,但是没法在Nginx的根目录 ...