Centos6.5的MySQL5.7.15二进制源码单机版安装
0.说明
最近在CentOS6.5上安装mysql,想要知道具体的安装过程,不想要通过yum直接一键安装,折腾一番,但是总遇到些麻烦。于是将mysql文档中的关于如何在Linux上安装mysql的部分仔细的读了一遍,又Google了广大网友的经验贴。总结起来在CentOS或者Red Hat上安装mysql可以有三种方式:
- 使用rpm -ivh xxx.rpm 或者 yum install xxx (一般推荐使用rpm来安装,需要弄清各个关键目录在哪)
- 使用编译好的通用二进制版本的mysql来安装(Generic Binaries mysql) (我就是使用方法2来安装的)
- 使用源码来编译安装。
Linux通用二进制版本mysql是在当我们使用rpm或者yum方法安装失败时,可以使用的方法。因为通用二进制版本对glibc等lib库的版本要求不是很高。所以使用这种方法,可以很好的解决:在低版本的CentOS上安装高版本的mysql。
1.下载
打开网页
http://dev.mysql.com/downloads/mysql/
在 Select Platform 中选择Linux - Generic,根据自己的系统选择32位或者64位的。
2.创建用户组和用户名(可选)
创建mysql用户组和用户名,相关命令如下:
groupadd mysql
useradd -g -r mysql mysql
3.解压,指定目录
将mysql安装包上传到centos系统的目录/usr/local/,解压软件包。将解压后生成的目录,改名为mysql,/usr/local/mysql就是MySQL数据库的安装目录(basedir)。
cd /usr/local/ #进入安装目录,安装包已经放在这里
tar -vxfz mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz #解压
mv mysql-5.7.15-linux-glibc2.5-x86_64 mysql #改名为mysql
4.创建mysql数据目录和日志目录
mysql在初始化数据库的时候会用到该数据目录
mkdir /usr/local/data #数据目录
mkdir /usr/local/logs #日志目录
5.更改目录权限
修改相关目录为mysql专属用户组和用户名
chown -R mysql:mysql /usr/local/mysql
6.创建my.cnf文件
vi /etc/my.cnf
#文件内容:
[client]
port=3306
socket=/tmp/mysql.sock
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
pid-file=/usr/local/mysql-5.7.16/data/mysql.pid
log_error=/usr/local/mysql-5.7.16/logs/mysql-error.log
default-character-set=utf8 #配置字符编码
port=3306
server_id=10
user=mysql
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
7.初始化mysql
进入数据库目录,以下配置都在/usr/local/mysql下,完成初始化:
#初始化命令1
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp
#初始化命令2
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
等待初始化后,如果配置了my.cnf的log_error,那么初始密码在log_error文件中,否则会打印出来。查看日志文件会看到A temporary is generated for root@localhost:u_7UR<%ox- 。MySQL初始化完成后,就可以使用这个密码,在本机通过root用户登录。
8.配置启动文件,启动MySQL服务
Mysql的启动文件mysql.server放在mysql源码包中,如下目录/usr/local/mysql/support-files,复制该文件同时改名为mysql到/etc/init.d/mysql:
#拷贝启动服务命令
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#启动mysql服务
/etc/init.d/mysql
9.配置环境变量和开机自启动
配置环境变量:
vim /etc/profile
#在文件最后加上下面两句话
export mysql_home=/usr/local/mysql
export PATH=$PATH:$mysql_home/bin
(也可以不用vi打开文件修改,直接在shell执行命令也可以完成配置:echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile)
#修改文件,使配置立即生效
source /etc/profile
设置开机自启动:
chkconfig --add mysql #添加mysql服务到开机自启动列表
chkconfig mysql on #开机自动启动
10.登录mysql服务
mysql -uroot -p #这里直接回车
password: #输入从日志文件里面的初始化密码
登录后,在重设密码之前,什么都不能干,所以要重设秘密:
mysql>alter user root@localhost identified by '你的密码';
这之后就可以正常进行数据库的各种操作了。
注意在5.7中存储密码的字段不再是password了,变成了authentication_string,如果要修改密码,就要执行下面的语句:
update mysql.user set authentication_string=password("root") where user="root";
参考链接:
http://blog.chinaunix.net/uid-25909722-id-4605091.html
http://www.th7.cn/system/lin/201607/172036.shtml
http://dev.mysql.com/downloads/mysql/
http://blog.sina.com.cn/s/blog_4b50392101017wln.html
Centos6.5的MySQL5.7.15二进制源码单机版安装的更多相关文章
- linux安装MySQL5.7.13(二进制|源码)
二进制和源码版本安装MySQL5.7.13,并简单介绍不同之处. 一.通用二进制部分 1.下载MySQL通用二进制软件包.[root@node1 ~]# wget http://120.52.72.2 ...
- MySQL5.7 二进制源码包安装
一般平时安装MySQL都是源码包安装的,但是由于它的编译需要很长的时间,所以建议安装二进制免编译包.可以到MySQL官方网站去下载,也可以到comsenz官方网站下载,还有各大镜像站下载. 下载安装包 ...
- 烂泥:mysql5.5数据库cmake源码编译安装
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...
- Mysql5.7.34 数据库源码编译安装
Mysql 数据库源码编译安装 MySQL是一个关系型数据库管理系统,关系型数据库是将数据保存在不同的表中,而非将所有数据放在一个大仓库内,这样就加快了速度并提高了灵活性.由于其体积小.速度快.总体拥 ...
- centos6.5环境源码编译安装mysql5.6.34
centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...
- mysql5.7.10 源码编译安装记录 (centos6.4)【转】
一.准备工作 1.1 卸载系统自带mysql 查看系统是否自带MySQL, 如果有就卸载了, 卸载方式有两种yum, rpm, 这里通过yum卸载 rpm -qa | grep mysql //查看系 ...
- 源码编译安装MySQL-5.6/mysql-5.6.39------踩了无数坑,重装了十几次服务器才会的,不容易啊!
1.切换到src目录 cd /usr/local/src/ 2. 下载mysql免编译二进制包 免编译的mysql二进制包5.6源码包: wget http://mirrors.163.com/mys ...
- 2-14 MySQL初步认识,及CentOS6.8环境,源码方式安装MySQL
什么是数据库: 存放数据的仓库RDBMS-->(Relational Database Management System) 关系型数据库管理系统DBMS--->(Database Man ...
- Centos6 系统下源码方式安装Mysql 记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配. #### ...
随机推荐
- ML.NET 示例:二元分类之用户评论的情绪分析
写在前面 准备近期将微软的machinelearning-samples翻译成中文,水平有限,如有错漏,请大家多多指正. 如果有朋友对此感兴趣,可以加入我:https://github.com/fei ...
- WPF 矩形框8个控制点伸缩及拖拽
最近在研发图片控件矩形框8个控制点进行控制边框的大小.位置等信息,之前查阅了相关的信息,比如别人整合的类:ControlResizer 这个类虽然是好,但是很大程度上是有限制,换句话说,它需要你二次更 ...
- [UWP 自定义控件]了解模板化控件(6):使用附加属性
1. 基本需求 之前的ContentView2添加了PointerOver等效果,和TextBox等本来就有Header的控件放在一起反而变得鹤立鸡群. 为了解决这个问题,这次把ContentView ...
- C#_根据银行卡卡号判断银行名称
/// <summary> /// 银行信息 /// </summary> public class BankInfo { #region 数组形式存储银行BIN号 /// & ...
- Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)
随着"互联网+"时代的业务增长.变化速度及大规模计算的需求,廉价的.高可扩展的分布式x86集群已成为标准解决方案,如Google已经在几千万台服务器上部署分布式系统.Docker及 ...
- Jmeter(GUI模式)教程
前些天,领导让我做接口的压力测试.What??我从未接触过这方面,什么都不知道,一脸蒙.于是我从学习jmeter开始入手. 现在记录下来jmeter的使用步骤,希望能对大家有所帮助. 一.安装Jmet ...
- 《Linux内核设计与实现》读书笔记三
Chapter 18 调 试 18.1 准备开始 1.准备工作: 一个bug 一个藏匿bug的内核版本 相关内核代码的知识和运气 2.执行foo就会让程序立即产生核心信息转储(dump core). ...
- Chrome查看HTTP
查找cookie 补充: 接口调试使用postman挺不错的.以前每次都自己写一个ajax来进行接收调试. 如:用post发送json数据给接口,得到json数据. 工具有时候能让效率大大提升,要学会 ...
- HDU 2024 C语言合法标识符
http://acm.hdu.edu.cn/showproblem.php?pid=2024 Problem Description 输入一个字符串,判断其是否是C的合法标识符. Input 输入 ...
- Docker for windows WIN版本,主板特性问题
WIN 10 Home版无法开启Hyper-V特性. Docker for windows有Hyper-V和VirtualBox两个版本: https://forums.docker.com/t/in ...