CentOS6.5下源码安装MySQL5.6.35
接上一篇文章使用RPM包安装MySQL,确实很方便。但是安装后却不知道各文件保存在哪个文件夹下!尝试使用源码安装~
本文主要参考:CentOS 6.4下编译安装MySQL 5.6.14
一、卸载旧版本
、使用下面的命令检查是否安装有mysql
[root@localhost tools]# rpm -qa|grep -i mysql
、有的话就卸载
[root@localhost tools]# yum remove MySQL-server-5.6.-.el6.i686
[root@localhost tools]# yum remove MySQL-devel-5.6.-.el6.i686
[root@localhost tools]# yum remove MySQL-client-5.6.-.el6.i686
[root@localhost tools]# yum remove mysql-utilities-1.6.-.el6.noarch
[root@localhost tools]# yum remove mysql-connector-python-2.1.-.el6.i686
、删除相关目录
[root@localhost tools]# whereis mysql
[root@localhost tools]# rm -rf /usr/share/mysql
[root@localhost tools]# rm -rf /var/lib/mysql
[root@localhost mysql]# mv /usr/lib/mysql /usr/lib/mysql.bak #这个当时不确定是rmp包所创建,暂时改名
二、安装MySQL
、安装编译代码需要的包
[root@localhost tools]# yum list|grep ncurses-devel
[root@localhost tools]# yum -y install make gcc-c++ cmake bison-devel ncurses-devel 、下载MySQL 5.6.
[root@localhost tools]# wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.35.tar.gz
[root@localhost tools]# tar zxvf mysql-5.6..tar.gz
[root@localhost tools]# cd mysql-5.6.
第一次下载错了(mysql-5.6.-linux-glibc2.-i686.tar.gz),编译时总是报错
CMake Error: The source directory “*” does not appear to contain CMakeLists.txt.
要选择的是 MySQL Community Server 下的 Source Code!!! 、目录创建(-p父目录不存在则创建此目录)
[root@localhost mysql-5.6.]# mkdir -p /usr/local/mysql/data 、编译安装
[root@localhost mysql-5.6.]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-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
[root@localhost mysql-5.6.]# make && make install
[root@localhost mysql-5.6.]# make clean
三、配置MySQL
、设置权限
查看是否有mysql用户及用户组
[root@localhost mysql-5.6.]# cat /etc/passwd
[root@localhost mysql-5.6.]# cat /etc/group
如果没有就添加mysql用户和组
[root@localhost mysql-5.6.]# groupadd mysql
[root@localhost mysql-5.6.]# useradd -g mysql mysql
修改/usr/local/mysql权限
[root@localhost mysql-5.6.]# chown -R mysql:mysql /usr/local/mysql 、初始化配置
进入安装路径
[root@localhost mysql-5.6.]# cd /usr/local/mysql
执行初始化配置脚本,创建系统自带的数据库和表
[root@localhost mysql]# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql 、启动MySQL
添加服务,拷贝服务脚本到init.d目录
如果/etc目录有之前存在的my.cnf文件,将其重命名。启动MySQL服务时,会优先在/etc目录下查找
[root@localhost mysql]# mv /etc/my.cnf /etc/my.cnf.bak
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# chkconfig mysql on
[root@localhost mysql]# service mysql start --启动MySQL 、配置用户
设置PATH
[root@localhost mysql]# echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[root@localhost mysql]# source /etc/profile
[root@localhost mysql]# echo $PATH
修改root密码
[root@localhost mysql]# mysql -uroot
mysql> SET PASSWORD = PASSWORD('mysql5635');
设置mydba用户可以远程访问
mysql> GRANT ALL PRIVILEGES ON *.* TO 'mydba'@'%' IDENTIFIED BY 'mysql5635' WITH GRANT OPTION;
防火墙设置可参考 http://www.cnblogs.com/ShanFish/p/6519950.html 、补充
退出后重新在终端登录
[root@localhost ~]# mysql -uroot -p
bash: mysql: command not found
使用完整的路径可以登录
[root@localhost ~]# /usr/local/mysql/bin/mysql -uroot -p
Enter password:
最后建立一个软链接,其它常用命令mysqladmin、mysqldump等不可用时候都可按用此方法解决
[root@localhost ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin
Add 2017-03-13 关于环境变量第一次使用的是临时的
#直接运行export命令定义变量【只对当前shell有效(临时的)】
[root@VMUest ~]# export PATH=/usr/local/mysql/bin:$PATH
[root@VMUest ~]# echo $PATH
它只对当前的shell有效,因此刚配置时可以使用mysql,退出登录就不能使用。后来将export写入到文件/etc/profile,就可以永久有效,当然也不需要软链接啦
[root@VMUest ~]# ll /usr/bin |grep mysql
lrwxrwxrwx. root root Mar : mysql -> /usr/local/mysql/bin/mysql
[root@VMUest ~]# rm -f /usr/bin/mysql
[root@VMUest ~]# mysql -uroot -p
Enter password:
然后就可以安心的玩MySQL啦~,我们可以导入示例数据,安装MySQL Utilities等等~~~
CentOS6.5下源码安装MySQL5.6.35的更多相关文章
- CentOS6.x下源码安装MySQL5.5
1. 更新yum源:http://www.cnblogs.com/vurtne-lu/p/7405931.html 2. 卸载原有的mysql数据库 [root@zabbix ~]# yum -y r ...
- CentOS6.5下源码安装多个MySQL实例及复制搭建
多实例安装本节是在CentOS6.5下源码安装MySQL5.6.35的基础上,在同一台机器增加一个MySQL实例.参考Centos中安装多个mysql数据的配置实例,安装目录为/usr/local/m ...
- CentOS6.5源码安装MySQL5.6.35
CentOS6.5源码安装MySQL5.6.35 一.卸载旧版本 1.使用下面的命令检查是否安装有mysql [root@localhost tools]# rpm -qa|grep -i mysql ...
- CentOS6下源码安装mysql-5.6.25
1.1.系统环境检查 1)检查系统版本 mkdir -p /server/tools/ cd /server/tools/ cat /etc/redhat-release 2)配置域名解析 vim / ...
- CentOS7下源码安装mysql5.6
目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置 单实例配置方法 添加防火墙 ...
- Linux下源码安装MySQL-5.6.25
从mysql-5.5起,mysql源码安装开始使用cmake了,因此我们得先安装cmake,配置安装目录./configure --perfix=/.....的时候和以前的会有些区别. 一.安装cma ...
- CentOS6.5下RPM包安装MySQL5.6.35
基本环境:VMware10.0+CentOS6.5+MySQL5.6.35 .查看操作系统相关 shell> cat /etc/issue shell> uname -a .创建需要下载r ...
- centos7下源码安装mysql5.7.16
一.下载源码包下载mysql源码包 http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.16.tar.gz 二.安装约定: 用户名:mysql 安装目录 ...
- linux6下源码安装mysql5.6
概述:CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14.正文:一:卸载旧版本使用下面的命令检查是否安装有MySQL Serverrpm ...
随机推荐
- ubuntu 没有桌面 没有图标,只剩下壁纸
sudo apt-get update sudo apt-get install --reinstall ubuntu-desktop sudo apt-get install unity sudo ...
- Java工具之NotePad++使用技巧
按住Alt键 拖动鼠标左键 批量添加 如,等 批量添加逗号, 下面, 竖排 变 横排 ctrl + f 使用正则表达式 \r\n 替换换行符 使用:sql语句中的 过滤条件 in中,往往适合范围查找 ...
- java_瞬时
瞬时(Instant): 方法: public class InstantTest01 { public static void main(String[] args){ //静态方法,返回utc上的 ...
- 执行sql查询,并查看语句执行花费时间
declare @d datetimeset @d=getdate() select * from A PRINT '[语句执行花费时间(毫秒)]'+LTRIM(datediff(ms,@d,getd ...
- BezierCode 工具使用
概要 今天无意间看到一个视频,发现了一款绘画Bezier 图形绘制并自动生成OC代码的神器, 因此马上先记录下. 之前一直很纠结如果程序员自己去绘制图片,久那么使用bezier 自己去画吗? 答案是: ...
- Python全栈开发:进度条
import sys import time for i in range(31): # 清空打印内容 sys.stdout.write("\r") # 控制输出样式 sys.st ...
- Java虚拟机性能管理神器 - VisualVM(8) 查找JAVA应用程序耗时的方法函数【转】
Java虚拟机性能管理神器 - VisualVM(8) 查找JAVA应用程序耗时的方法函数[转] 标签: javajvm监控工具性能优化 2015-04-07 16:47 1846人阅读 评论(0) ...
- ActiveMQ 知识点
消息队列高可用 持久化,事务,签收,zookeeper+replicated-leveldb-store的主从集群 异步发送 同步发送: 明确指定同步发送 未使用事务的前提下,发送持久化消息(会使用同 ...
- 多线程MT和多线程MD的区别
这段时间司在招实习生,而不管是远程的电话面试或者是实际现场面试中领导都喜欢问你这个问题,但是可惜的是能很好答上来的人很少.后来发现不管是应届的实习生,甚至有些实际参加工作几年的人也未必真的了解这个问题 ...
- 莫烦pytorch学习笔记(八)——卷积神经网络(手写数字识别实现)
莫烦视频网址 这个代码实现了预测和可视化 import os # third-party library import torch import torch.nn as nn import torch ...