MySQL学习【第二篇安装】
一.Mysql安装方式
1.安装方式
1.rpm,yum安装
安装方便,安装速度快,但无法定制
2.二进制安装
不需要安装,解压即用,不能定制功能
3.编译安装
可定制,安装很慢,安装分为四个步骤
1.1 解压(tar)
1.2 生成(./configure)或者cmake
1.3 编译(make)
1.4安装(make install)
在5.5版本之前 tar ./configure make make install,在5.5版本之后则是cmake 或者gmake
4.可以先编译,然后定制rpm包,制作yum仓库,使用yum安装
特点:速度快,可定制,不过在制作过程过较复杂,制作时间长,在制作完成后极其简单,不用再继续配置
5.企业中选择的安装方式
5.1 中小型企业:以上方式任选,运维偏向编译安装,dba偏向二进制安装
5.2 大型企业:可以选择先编译然后定制rpm包,制作yum仓库,然后进行yum安装
2.编译安装
1.解压 tar
2.生成 ./configure (cmake)
3.编译 make
4.安装 make install
1)下载epel源
[root@db01 ~]# wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
2)安装依赖
[root@db01 ~]# yum install -y ncurses-devel libaio-devel autoconf cmake gcc gcc-c++ glibc
3)解压mysql源码包
[root@db01 ~]# tar xf mysql-5.6..tar.gz
4)进入解压后的源码目录
root@db01 ~]# cd mysql-5.6.
5)创建目录(为了方便管理,你可以不做)
[root@db01 ~]# mkdir /application
6)生成编译文件
[root@db01 mysql-5.6.]# cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6. \
#程序存放位置
-DMYSQL_DATADIR=/application/mysql-5.6./data \
#数据存放位置
-DMYSQL_UNIX_ADDR=/application/mysql-5.6./tmp/mysql.sock \
#使用utf8字符集
-DDEFAULT_CHARSET=utf8 \
#校验规则
-DDEFAULT_COLLATION=utf8_general_ci \
#使用其他额外的字符集
-DWITH_EXTRA_CHARSETS=all \ #支持的存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE= \
-DWITH_FEDERATED_STORAGE_ENGINE= \
-DWITH_BLACKHOLE_STORAGE_ENGINE= \
#禁用的存储引擎
-DWITHOUT_EXAMPLE_STORAGE_ENGINE= \
-DWITH_ZLIB=bundled \ #启用zlib库支持(zib、gzib相关)
-DWITH_SSL=bundled \ #启用SSL库支持(安全套接层)
-DENABLED_LOCAL_INFILE= \ #启用本地数据导入支持
-DWITH_EMBEDDED_SERVER= \ #编译嵌入式服务器支持
-DENABLE_DOWNLOADS= \
# mysql5.6支持了google的c++mock框架了,允许下载,否则会安装报错。
-DWITH_DEBUG= #禁用debug(默认为禁用)
7)编译安装
[root@db01 mysql-5.6.]# make && make install
8)创建mysql用户
[root@db01 mysql-5.6.]# useradd mysql -s /sbin/nologin -M
9)做软连接(还是那句话,你可以选择不做,一切为了方便,不做,后面有坑,自己排)
[root@db01 mysql-5.6.]# ln -s /application/mysql-5.6. /application/mysql
10)进入文件目录
[root@db01 mysql-5.6.]# cd /application/mysql/support-files
11)拷贝mysql配置文件
[root@db01 support-files]# cp my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
12)拷贝启动脚本
[root@db01 support-files]# cp mysql.server /etc/init.d/mysqld
13)进入初始化目录
[root@db01 support-files]# cd /application/mysql/scripts
14)初始化mysql
[root@db01 scripts]# ./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data
15)创建socket文件所在目录
[root@db01 scripts]# mkdir /application/mysql-5.6./tmp
16)授权mysql服务目录
[root@db01 scripts]# chown -R mysql.mysql /application/mysql*
17)添加环境变量
[root@db01 scripts]# cat /etc/profile.d/mysql.sh
export PATH="/application/mysql/bin:$PATH"
18)启动mysql
[root@db01 scripts]# /etc/init.d/mysqld start
19)启动mysql
[root@db01 scripts]# /etc/init.d/mysqld start
19)用systemctl管理(一般来讲我不用,没必要)
[root@db01 ~]# cat /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld()
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = [root@db01 ~]# /etc/init.d/mysqld stop
Shutting down MySQL.. SUCCESS!
[root@db01 ~]# systemctl start mysqld
3.mysql二进制安装步骤
1)解压二进制包(官网上下载)
[root@db02 ~]# tar xf mysql-5.6.-linux-glibc2.-x86_64.tar.gz
2)创建mysql安装目录
[root@db02 ~]# mkdir /application
3)移动MySQL程序到安装目录
[root@db02 ~]# mv mysql-5.6.-linux-glibc2.-x86_64 /application/mysql-5.6.
4)做软连接
[root@db02 ~]# ln -s /application/mysql-5.6. /application/mysql
5)进入其他文件目录
[root@db02 ~]# cd /application/mysql/support-files
6)拷贝配置文件
[root@db02 support-files]# cp my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
7)拷贝启动脚本
[root@db02 support-files]# cp mysql.server /etc/init.d/mysqld
8)进入初始化目录
[root@db02 support-files]# cd ../scripts/
9)创建mysql用户
[root@db02 scripts]# useradd mysql -s /sbin/nologin -M
10)安装初始化依赖
[root@db02 scripts]# yum install -y autoconf libaio-devel
11)初始化
[root@db02 scripts]# ./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data
12)启动mysql
[root@db02 scripts]# /etc/init.d/mysqld start
13)添加环境变量
[root@db02 scripts]# vim /etc/profile.d/mysql.sh
export PATH="/application/mysql/bin:$PATH"
14)修改
[root@db02 scripts]# sed -i 's#/usr/local#/application#g' /etc/init.d/mysqld /application/mysql/bin/mysqld_safe
15)启动
[root@db02 mysql]# /etc/init.d/mysqld start
MySQL学习【第二篇安装】的更多相关文章
- 小白两篇博客熟练操作MySQL 之 第二篇
小白两篇博客熟练操作MySQL 之 第二篇 一. 视图 视图是一个虚拟表,其本质是根据SQL语句获取动态的数据集,并为其命名,用户使用时只需使用名称即可获取结果集, 并可以将其当做表来使用. s ...
- Java并发包下锁学习第二篇Java并发基础框架-队列同步器介绍
Java并发包下锁学习第二篇队列同步器 还记得在第一篇文章中,讲到的locks包下的类结果图吗?如下图: 从图中,我们可以看到AbstractQueuedSynchronizer这个类很重要(在本 ...
- MySQL学习笔记01-MYSQL安装
一 MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司. MySQL 最流行的关系型数据库管理系统. MySQL分为企业版和社区版. ...
- 从.Net到Java学习第二篇——IDEA and start spring boot
从.Net到Java学习第一篇——开篇 所谓工欲善其事,必先利其器,做java开发也一样,在比较了目前最流行的几个java IDE(eclipse,myeclipse.IDEA)之后,我果断选择IDE ...
- Java泛型学习---第二篇
泛型学习第一篇 1.泛型之擦拭法 泛型是一种类似"模板代码"的技术,不同语言的泛型实现方式不一定相同. Java语言的泛型实现方式是擦拭法(Type Erasure). 所谓擦拭法 ...
- [知了堂学习笔记]_牵线Eclipse和Tomcat第二篇 —— 安装Tomcat&&添加Tomcat到Eclipse
来了来了~~~~~我们的"织女"--Tomcat来了,牛郎们等急了吧!哈哈! 一.安装Tomcat 下载地址:http://tomcat.apache.org/download-7 ...
- zookeeper学习记录第二篇-----安装、配置、启动
搭建zk集群,起码保证3台虚拟机的配置,本人使用的虚拟机环境为wm14+centos7+jdk1.8 下载地址 zk的tar包下载地址:http://mirror.bit.edu.cn/apache/ ...
- python应用:爬虫框架Scrapy系统学习第二篇——windows下安装scrapy
windows下安装scrapy 依次执行下列操作: pip install wheel pip install lxml pip install PyOpenssl 安装Microsoft visu ...
- Entity Framework with MySQL 学习笔记一(安装)
声明 : 数据库是Mysql,本人的程度只到会写sql语句(不会储蓄过程), c# 会基本的ADO.NET数据库访问,LINQ基础. 这篇只做个人学习|温习作用. 新手可以参考,也请高手指正错误, ...
随机推荐
- 'webpack' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
npm updatea -g 很严重,把本地npm安装包都更新了,跟项目npm安装包版本不一,导致 意思是版本冲突,手动卸载了,重新安装还是最新版本,很是头疼.找同事的电脑拷贝了一份,然后复制过来报“ ...
- leetCode题解之Reshape the Matrix
1.题目描述 2.分析 使用了一个队列. 3.代码 vector<vector<int>> matrixReshape(vector<vector<int>& ...
- angular-动画。
ngAnimate插件是做什么的? ngAnimate插件如其名字一样是为元素提供动画的. 怎么定义动画? 第一步必须是引入插件 <script src="//cdn.bootcss. ...
- 5.URL
1.URL(Uniform Resource Locators) URL可以由字母组成,如"W3CSchools.cc", 或互联网协议(IP)地址: 192.68.20.50. ...
- geogebra几何画图工具用法
1. intersectPath :该命令可以自动“算出”对应多边形的交汇区域 2. 静态文本可以指定到一个对象的中间这样将来动态变化对象大小时也不出现问题 3.export worksheet 4. ...
- Django之modelform简介
在django中内置了form类和model类,当页面中的form值和model字段值完全一样时,此时可以通过model生成一个完全一样的form,Django中的modelForm就因此而生. 目标 ...
- 分别用C/C++ 和 C#实现简单的观察者模式
网上找了很多关于观察者模式的代码例子和文章,都写的比较复杂,我个人还是喜欢从易到难,今天自己参考网上资料,也写了一个简单观察者模式的例子,简单的复习了一下Observer 模式,Observer 模式 ...
- [翻译] CSStickyHeaderFlowLayout
CSStickyHeaderFlowLayout https://github.com/jamztang/CSStickyHeaderFlowLayout Parallax, Sticky Heade ...
- FR共轭梯度法 matlab
% FR共轭梯度法 function sixge x0=[1,0]'; [x,val,k]=frcg('fun','gfun',x0) end function f=fun(x) f=100*(x(1 ...
- spring-springmvc-hibernate项目小结
1. web.xml中别忘记加入spring监听器 <listener> <listener-class>org.springframework.web.context.Con ...