Centos 7下编译安装Mysql
(1)官网下载地址:https://dev.mysql.com/downloads/mysql/
此处下载的是 mysql-boost-5.7..tar.gz
百度云下载地址:https://pan.baidu.com/s/1wDAJawz2hUEMbzOVte-bdQ
提取码:gfqo
(2)安装依赖包
yum -y install \
ncurses \
ncurses-devel \
bison \
cmake \
make \
gcc-c++
(3)解压源码包并配置
cd /usr/local/src
tar -zxf mysql-boost-5.7..tar.gz
cd mysql-5.7./
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/usr/local/mysql \
-DWITH_MYISAM_STORAGE_ENGINE= \
-DWITH_INNOBASE_STORAGE_ENGINE= \
-DWITH_MEMORY_STORAGE_ENGINE= \
-DWITH_READLINE= \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_TCP_PORT= \
-DENABLED_LOCAL_INFILE= \
-DWITH_PARTITION_STORAGE_ENGINE= \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_BOOST=boost
以下为上述配置的说明
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装根目录
-DMYSQL_DATADIR=/data//data \ 数据存储目录
-DSYSCONFDIR=/data/ \ 配置文件(my.cnf)目录 (貌似没用,配置文件依然在/etc/my.cnf)
-DWITH_MYISAM_STORAGE_ENGINE= \ 编译myisam存储引擎,默认的存储引擎,不加也可以
-DWITH_INNOBASE_STORAGE_ENGINE= \ 支持InnoDB存储引擎,这个也是默认安装的
-DWITH_MEMORY_STORAGE_ENGINE= \ 支持MEMORY引擎
-DWITH_READLINE= \ 使用readline功能
-DMYSQL_UNIX_ADDR=/data//mysql.sock \ sock存放到/data/3306目录
-DMYSQL_TCP_PORT= \ 数据库端口
-DENABLED_LOCAL_INFILE= \ 可以使用load data infile命令从本地导入文件
-DWITH_PARTITION_STORAGE_ENGINE= \ 安装数据库分区
-DEXTRA_CHARSETS=all \ 支持所有字符集
-DDEFAULT_CHARSET=utf8 \ 默认字符集
-DDEFAULT_COLLATION=utf8_general_ci \ 设置默认效验字符集排序规则,要和DDEFAULT_CHARSET一起用
-DWITH_BOOST=boost 从MySQL 5.7.5开始Boost库是必需的
(4)编译及安装
make && make install
(5)添加用户和组
groupadd mysql
useradd -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
(6)初始化
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
注意:初始化完了需要记住root密码
出现以下说明初始化成功
2018-11-12T01:25:29.316210Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-11-12T01:25:30.314274Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-11-12T01:25:30.441468Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-11-12T01:25:30.512508Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: d7df9433-e619-11e8-804b-00163e0851f0.
2018-11-12T01:25:30.517175Z 0 [Warning] Gtid table is not ready to be used. Table ‘mysql.gtid_executed’ cannot be opened.
2018-11-12T01:25:30.517899Z 1 [Note] A temporary password is generated for root@localhost: _1ahqhzYqtMd
(7)写入环境变量
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
(8)修改配置文件
vim /etc/my.cnf
配置如下:
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
user = mysql
symbolic-links= [mysqld_safe]
log-error = /usr/local/mysql/log-error/mariadb.log
pid-file = /usr/local/mysql/mariadb.pid
(9)创建日志文件并赋予权限
mkdir -p /usr/local/mysql/log-error/
touch /usr/local/mysql/log-error/mariadb.log
chown -R mysql:mysql /usr/local/mysql/log-error/mariadb.log
(10)启动Mysql
/usr/local/mysql/support-files/mysql.server start
(11)设置用户密码及权限
登录mysql:
mysql -u root -p
修改root用户密码:
SET PASSWORD = PASSWORD('');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
授权所有用户:
grant all privileges on *.* to 'root'@'%' identified by '' with grant option;
flush privileges;
查询数据库的用户:
use mysql;
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
quit; #退出mysql命令行
(12)设置为开机自动启动Mysql
vim /etc/rc.d/rc.local
添加标准启动命令:
/usr/local/mysql/support-files/mysql.server start
给/etc/rc.d/rc.local添加可执行权限
chmod +x /etc/rc.d/rc.local
Centos 7下编译安装Mysql的更多相关文章
- CentOS Linux下编译安装MySQL
本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...
- CentOS 6下编译安装MySQL 5.6
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- CentOS 下编译安装MySQL
CnetOS 下编译安装 MySql 查看是否存在旧版本: rpm -qa | grep mysql 卸载旧版本: rpm -e mysql #普通删除模式 rpm -e --nodeps mys ...
- CentOS源码编译安装MySQL 5.5.15
CentOS源码编译安装MySQL 5.5.15 文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...
- CentOS下编译安装MySQL 5.6.21
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...
- Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake ...
- Linux下编译安装MySQL
一.环境准备yum install -y ncurses-devel libaio-develyum install -y cmake makeuseradd -s /sbin/nologin -M ...
- Linux CentOS6.5下编译安装MySQL 5.6
检查:卸载掉原有MySql 因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已 ...
- Linux(CentOS6.5)下编译安装MySQL Community Server 5.7.12
组件 官方网站 直接下载地址 备注 mysql http://dev.mysql.com/downloads/mysql/ http://mirrors.sohu.com/mysql/MySQL- ...
随机推荐
- 《UNIX环境高级编程》(APUE) 笔记第十一章 - 线程
11 - 线程 Github 地址 1. 线程概念 典型的 UNIX进程 可以看成只有一个 控制线程 :一个进程在某一时刻只能做一件事情.有了 多个控制线程 ,就可以把进程设计成在某一时刻能够做不止一 ...
- Centos7安装docker与docker-compose
Docker是一个开源的容器虚拟化平台 , Docker Compose是一个用来定义和运行复杂应用的Docker工具.使用Compose,你可以在一个文件中定义一个多容器应用,然后使用一条命令来启动 ...
- String 类的其他功能
12.01_常见对象(Scanner的概述和方法介绍)(掌握) A:Scanner的概述 B:Scanner的构造方法 Scanner(InputStream source) System.in C: ...
- GAN网络从入门教程(一)之GAN网络介绍
GAN网络从入门教程(一)之GAN网络介绍 稍微的开一个新坑,同样也是入门教程(因此教程的内容不会是从入门到精通,而是从入门到入土).主要是为了完成数据挖掘的课程设计,然后就把挖掘榔头挖到了GAN网络 ...
- CSS3 clip-path 用法介绍
一.基本概念 刷新 QQ 空间动态时,发现一则广告,随着用户上下滑动动态列表,就会自动切换广告图片,这样的效果对移动端本就不大的屏幕来说,无疑是很精妙的考虑,这样的效果是怎么实现的呢? 你可以点击这里 ...
- 嘿,java打怪升级攻略
Java成神之路 第一层 java基础 **当你通过本层所有关卡,你可以完成一些简单的管理系统.坦克大战游戏.QQ通信等. ** 第二层 数据库 数据库类型很多例如:MySQL.oracle.redi ...
- css3-pointer-events_demo
该demo定义了一个菜单,点击了一次之后就不能再点击,另外其中也用到了flex布局,可直接将代码复制运行即可 <html> <head> <meta name=" ...
- 洛谷 P3592 [POI2015]MYJ
题意 给定\(m\)个区间\([a_i,b_i]\)以及\(c_i\),对于一个含有\(n\)个元素的序列\(ans[]\),区间\(i\)对其的贡献为\(\min\{ans_i\}(i\in[a_i ...
- 洛谷 P1433 吃奶酪 状压DP
题目描述 分析 比较简单的状压DP 我们设\(f[i][j]\)为当前的状态为\(i\)且当前所在的位置为\(j\)时走过的最小距离 因为老鼠的坐标为\((0,0)\),所以我们要预处理出\(f[1& ...
- Kail安装VMtools
0x00 前言 之前用吾爱的xp虚拟机,总是装不上vmtools,真是难受.每次跨机器粘贴复制都一件极其痛苦的事,而且虚拟机还不能直接浏览硬盘上的文件.虽说安全性保证了,但是这是真的痛苦.这两天开始用 ...