CentOS 编译源码安装MySQL-5.6.16
mysql5.6.16的安装和之前的5.5、5.1有些不同,编译的时候不再使用./configure来进行了,使用了cmake命令来进行编译项目。
1、准备编译环境
yum
-y installmakegcc-c++
cmake bison-devel ncurses-devel gcc \ autoconf
automake zlib* fiex* libxml* libmcrypt* libtool-ltdl-devel*
2、下载mysql
wget
http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.16.tar.gztar -zxvf
mysql-5.6.16.tar.gzcd mysql-5.6.16
3、检查环境
检查是否安装有mysql,CentOS6.4采用最小安装(minimal)的时候默认有带mysql,检查并协助mysql:
rpm -qa | grep mysql
卸载:yum -y remove mysql名称
3.1、groupadd mysql #添加mysql组
3.2、useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
3.3、mkdir -p /data/mysql #创建mysql数据库存放目录
3.4、chown -R mysql:mysql /data/mysql#设置mysql数据库目录权限
3.5、mkdir -p /usr/local/mysql #创建mysql安装目录
4、编译源码
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/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 \
-DENABLE_DOWNLOADS=1
Googlemock was not found. gtest-based unit tests will be disabled. You can run cmake . -DENABLE_DOWNLOADS=1 to automatically download and build required components from source.
– If you are inside a firewall, you may need to use an http proxy: export http_proxy=http://example.com:80
- 使用参数-DENABLE_DOWNLOADS=1 自动下载。
- 有网络限制,设置http代理
export。环境变量
http_proxy=http://example.com:80http_proxy也为
curl 等其他工具所用。尽管 yum 可以识别大写或小写的 http_proxy,但curl 要求环境变量的名称是小写。
如果这个cmake这个步骤有出现问题,解决后重新再cmake一次。如果输出类似这样,那么就好了。
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
|
------------------------------ |
接着编译源码
|
1
|
make&& makeinstall |
配置mysql数据库
1、cd /usr/local/src/mysql-5.0.41
cp ./support-files/my-huge.cnf /etc/my.cnf #拷贝配置文件
vi /etc/my.cnf#编辑配置文件,在[mysqld]部分添加
datadir = /data/mysql #添加mysql数据库路径
./scripts/mysql_install_db --user=mysql #生成mysql系统数据库
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把mysql加入系统启动
chmod 755 /etc/init.d/mysqld #增加执行权限
2、chkconfig mysqld on #加入开机启动
vi /etc/rc.d/init.d/mysqld #编辑添加mysql安装路径和数据库存放目录
basedir = /usr/local/mysql
datadir = /data/mysql
3、vi /etc/profile #把mysql服务加入系统环境变量:最后添加下面这行
export PATH = $PATH:/usr/local/mysql/bin
shutdown -r now #需要重新启动,等系统重启后继续下面操作
4、mysql_secure_installation#设置mysql密码,根据提示输入y 回车输入2次密码
或者直接修改密码 /usr/local/mysql/bin/mysqladmin -u root -p password "123456" #修改密码
service mysqld restart #重启服务
到此,mysql安装完成!
5、如果想在任一目录下输入mysql -u root -p 进入mysql命令行,需要在每个用户变量里配置。
linux在每个用户下面都有个.bash_profile的用户变量文件,将mysql的bin目录路径添加到该用户变量的PATH后面。如:
vi /root/.bash_profile
添加如下:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin/
此时在任一目录下输入mysql -u root -p密码 就能进入mysql命令了。
6、mysql的驱动存放位置:jdk主目录/jre/lib/ext/
CentOS 编译源码安装MySQL-5.6.16的更多相关文章
- Centos7服务器中通过编译源码安装MySQL
基于在Centos7服务器上使用 yum 安装MySQL5.7到默认路径 在修改文件存储位置的时候,折腾了一番没有将成功将datadir修改为我想要的位置 我决定再尝试一下通过编译源码来自定义安装: ...
- CentOS下源码安装MySQL
一.创建mysql用户与组,相关目录 useradd mysql -s /sbin/nologin mkdir /usr/local/mysql chown -R mysql.mysql mkdir ...
- centos 7 源码安装 mysql 5.6
下载 mysql 安装包 $ wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.44.tar.gz # or $ curl -O ht ...
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- CentOS 7下源码安装MySQL 5.7
网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...
- CentOS 6.4 源码安装MySQL 5.6
1.安装前准备工作 1.1 必备的包 gcc/g++ :MySQL 5.6开始,需要使用g++进行编译.cmake :MySQL 5.5开始,使用cmake进行工程管理,cmake需要2.8以上版本. ...
- Centos7源码安装mysql及读写分离,互为主从
Linux服务器 -源码安装mysql 及读写分离,互为主从 一.环境介绍: Linux版本: CentOS 7 64位 mysq版本: mysql-5.6.26 这是我安装时所使用的版本, ...
- CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...
- 源码安装mysql,及主从同步
源码安装mysql [可选] 如果用源码安装cmake软件: cd /home/oldboy/tools/ tar xf cmake-.tar.gz cd cmake- ./configure #CM ...
随机推荐
- Mac下配置环境变量(转)
说明:Mac下一般使用bash作为默认shell 一.Mac系统的环境变量,加载顺序为: /etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~ ...
- springboot中@webfilter注解的filter时注入bean都是null
在使用@Webfilter注解Filter的情况下,不上外部tomcat时是没有问题的.但是在tomcat下运行时,filter中注入的bean就都是null 解决办法: 一:去掉@Webfilter ...
- Linux_用户管理&权限管理
2017年1月11日, 星期三 Linux_用户管理&权限管理 1. Linux用户管理&权限管理 终端的概念: tty 查看登录的终端 类型 user group oth ...
- urllib2模块初体验———豆瓣读书页面下载小爬虫
我也是根据:http://blog.csdn.net/pleasecallmewhy/article/details/8927832 ,来写出豆瓣读书的爬虫,废话不说直接上代码: #!/usr/bin ...
- tmux终端工具
本文原始地址:http://www.cnblogs.com/chinas/p/7094172.html,转载请注明出处,谢谢!!! 1.介绍 tmux(终端复用工具):一个很有趣的工具,类似GNU S ...
- HDU 5532 Almost Sorted Array (最长非递减子序列)
题目链接 Problem Description We are all familiar with sorting algorithms: quick sort, merge sort, heap s ...
- vue引入jquery的方法
1.局部引入 通过命令下载jquery npm install jquery --save-dev 在需要引入jquery的组件中通过import $ from 'jquery'引入即可 2.全局 ...
- CAS和AQS
一.CAS CAS(Compare And Swap),即比较并交换.是解决多线程并行情况下使用锁造成性能损耗的一种机制,CAS操作包含三个操作数——内存位置(V).预期原值(A)和新值(B).如果内 ...
- Git如何设置多个用户
前言 由于我们在使用GitHub时,通常不希望带有公司信息,所以需要独立的Git账户来提交练习代码,本文记录一下如何配置多个Git账户并创建公钥 正文 1.首先进入~/.ssh文件夹 2.然后创建一个 ...
- [问题解决]同时显示多个Notification时PendingIntent的Intent被覆盖?
情况是这样的,使用NotificationManager触发多个Notification: private Notification genreNotification(Context context ...