【MySQL】MySQL无基础学习和入门之二:MySQL的安装
安装
MySQL安装一般分为源码包编译安装、分发包、rpm包安装和yum安装,四种安装方式有一些区别,对应的适用场景也不一样。
源码包:源码包就是程序源代码包,其中包含程序代码文件,这些代码文件是文本型,可以直接通过编辑器打开阅读内容,这里的程序还不能直接使用,因为操作系统和电脑无法直接调用文本代码,需要语言编译器将文本代码编译成二进制文件,编译完成的输出就是分发包。Windows系统安装软件时经常会出现一个自定义安装的选项,用户可以自主选择软件部分功能安装,取消安装不需要的组件,增加安装默认组件外的可选功能,在Linux系统上是通过编译参数控制软件自带功能的安装,稍后在编译安装MySQL时会举例说明。如果有C/C++语言功底我推荐网易研究院姜承尧的《MySQL内核:InnoDB存储引擎(卷1)》这本书,主要是对InnoDB存储引擎的功能实现分析。
分发包:分发包是通过源码包编译完成的软件,可以直接使用,像Windows系统中的软件绿色版,解压即可用,所以在上面罗列四中安装方式时只有分发包没有“安装”两字。由于在公司生产环境中可能会出现Linux服务器版本不同、底层c和c++等语言库版本不同,可以根据系统环境版本及稳定性的需要选择源码包编译安装,或直接使用分发包。源码包编译安装可以根据自己需要选择开启或关闭一些功能,分发包由于是已经编译好的,无法再进行选择和调整,除非使用源码包修改编译参数再编译。
rpm安装:rpm包安装不用编译,可以从MySQL官网下载rpm包。下载好rpm包后使用rpm命令安装,相比较源码包编译和分发包更简单。
yum安装:Linux系统的yum命令支持最简单、快捷的软件安装方式,当Linux系统联网且yum源配置好,可以使用“yum install”加软件包名就可以安装该软件以及相关所需要的环境软件,安装MySQL执行“yum install mysql-server mysql”即可(yum支持同时安装多个软件包,例如mysql-server和mysql实际在yum源中是两个部分,mysql-server是MySQL的服务端功能包,mysql是客户端功能包)。
对于上面提到的源码编译安装、分发包、rpm和yum安装下面会介绍更多,但是对于系统层面的“rpm”和“yum”命令可以去网上搜索了解更多。
官网下载
MySQL官方下载地址:http://dev.mysql.com/downloads/mysql/
在下载页面中:
“Select Platform”的“Source Code”是源码包
“Linux - Generic”是官方分发包
“Red Hat EnterPrise Linux/Oracle Linux”中下载rpm包
源码包编译安装
#需要先安装cmake,如果没有配置yum源可以编译安装(MySQL5.5以后需要cmake的编译环境)
[root@Centos6.3.2 ~]# yum -y install cmake.x86_64
#下载源码包(如果系统可以上网直接wget下载,如果是虚拟机可以在实体机下载好在虚拟机总使用“rz”命令或者实体机中的SecureFX上传)
[root@Centos6.3.2 ~]# cd /
[root@Centos6.3.2 ~]# wget http://cdn.mysql.com//Downloads/MySQL-5.5/mysql-5.5.48.tar.gz
#解压源码包
[root@Centos6.3.2 /]# tar -zxvf mysql-5.5..tar.gz
#进入源码包目录
[root@Centos6.3.2 /]# cd mysql-5.5.
#cmake源码参数
#注意参数“-DCMAKE_INSTALL_PREFIX=”控制MySQL源码编译完软件放置的路径,通常情况用户自主安装的软件放置在“/usr/local/”下
#参数“-DWITH_INNOBASE_STORAGE_ENGINE=1”说明开启InnoDB引擎
#参数“-DDEFAULT_CHARSET=utf8”说明默认使用的字符集为utf8(字符集不在这里解释)
#配置编译参数(编译参数很多,熟悉安装和MySQL功能后可以自己查询学习)
[root@Centos6.3.2 mysql-5.5.]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_MYISAM_STORAGE_ENGINE= -DWITH_INNOBASE_STORAGE_ENGINE= -DDEFAULT_CHARSET=utf8
#进行编译
[root@Centos6.3.2 mysql-5.5.]# make && make install
#编译完成后可以查看安装完成的软件如下
#bin路径下都是MySQL的命令,包含MySQL启动、停止、备份等命令
#include、lib等路径下都是MySQL底层编译完成的类库文件
#scripts下面有初始化MySQL的脚本,每个MySQL都需要初始化建立最基础的系统表及用户表(也可以使用相同版本的初始化文件在其他未初始化实例中使用,就可以省略执行初始化脚本)
[root@test1 mysql-5.5.]# ll /usr/local/mysql
total
drwxr-xr-x root root Oct : bin
-rw-r--r-- root root Mar COPYING
drwxr-xr-x root root Sep : data
drwxr-xr-x root root Sep : docs
drwxr-xr-x root root Sep : include
-rw-r--r-- root root Mar INSTALL-BINARY
drwxr-xr-x root root Sep : lib
drwxr-xr-x root root Sep : man
drwxr-xr-x root root Sep : mysql-test
-rw-r--r-- root root Mar README
drwxr-xr-x root root Oct : scripts
drwxr-xr-x root root Sep : share
drwxr-xr-x root root Sep : sql-bench
drwxr-xr-x root root Sep : support-files
上面编译完成后在/usr/local/mysql中的文件,基本就是分发包解压后的文件(由于编译参数不同,文件基本一样,但是文件内容存在差异)。
由于编译安装之后的操作过程与分发包后续操作基本相同,所以分发包使用的操作不单独说明,部分区别后续会与编译安装操作分开说明。
分发包下载地址:http://cdn.mysql.com//Downloads/MySQL-5.5/mysql-5.5.48-linux2.6-x86_64.tar.gz
分发包下载后可以直接放在/usr/local/路径下解压,也可以在别的路径下解压直接使用。
rpm安装
MySQL-client下载:http://cdn.mysql.com//Downloads/MySQL-5.5/MySQL-client-5.5.48-1.linux2.6.i386.rpm
MySQL-server下载:http://cdn.mysql.com//Downloads/MySQL-5.5/MySQL-server-5.5.48-1.linux2.6.i386.rpm
下载好rpm包后,使用rpm命令安装(rpm命令其他参数请自己查询学习)
[root@test /]# rpm -ivh MySQL-client-5.5.-.linux2..i386.rpm
[root@test /]# rpm -ivh MySQL-server-5.5.-.linux2..i386.rpm
如果没有报错就说明安装成功。
yum安装
【MySQL】MySQL无基础学习和入门之二:MySQL的安装的更多相关文章
- 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建
数据库基础概述 大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...
- 【MySQL】MySQL无基础学习和入门大纲
一.安装 1.yum安装 2.分发包安装 3.配置文件 4.初始化数据库 二.启动 1.service mysqld start默认配置启动 2.mysqld_safe方式加载配置文件启动 3.mys ...
- MySQL数据库的基础学习
1.什么是数据库 用来存储数据的仓库,简称数据库; 数据库可以在硬盘和内存中存储数据 数据库存储数据的本质: 通过文件来存储数据 2.数据库存储数据与文件存储的区别 (1).一个文件仅仅只能存储在一个 ...
- {MySQL存储引擎介绍}一 存储引擎解释 二 MySQL存储引擎分类 三 不同存储引擎的使用
MySQL存储引擎介绍 MySQL之存储引擎 本节目录 一 存储引擎解释 二 MySQL存储引擎分类 三 不同存储引擎的使用 一 存储引擎解释 首先确定一点,存储引擎的概念是MySQL里面才有的,不是 ...
- salesforce 零基础学习(五十二)Trigger使用篇(二)
第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...
- salesforce零基础学习(八十二)审批邮件获取最终审批人和审批意见
项目中,审批操作无处不在.配置审批流时,我们有时候会用到queue,related user设置当前步骤的审批人,审批人可以一个或者多个.当审批人有多个时,邮件中获取当前记录的审批人和审批意见就不能随 ...
- python基础学习24----使用pymysql连接mysql
使用pymysql连接mysql 安装pymysql pymysql安装可以通过两种方式 使用pip安装 首先简单说一下pip的使用方法 获取帮助 pip --help 升级 pip pip inst ...
- R基础学习(一)-- 连接mysql数据库
测试环境:win10+RStudio (1)在Console加载两个插件 >install.packages('DBI') Installing package into ‘C:/Users/l ...
- 2019-9-17:渗透测试,基础学习,apache初识,mysql初识等笔记
python -m SimpleHTTPServer gedit 文本编辑器 apache2 默认配置文件目录:/etc/apache2/apache2默认首页源码: /var/www/html my ...
随机推荐
- BIP_开发案例04_通过BI Publisher实现打印报表的二维码(案例)(待整理)
2014-01-01 Created BaoXinjian
- POJ 2342 &&HDU 1520 Anniversary party 树形DP 水题
一个公司的职员是分级制度的,所有员工刚好是一个树形结构,现在公司要举办一个聚会,邀请部分职员来参加. 要求: 1.为了聚会有趣,若邀请了一个职员,则该职员的直接上级(即父节点)和直接下级(即儿子节点) ...
- DrawTools(画图工具)原始版本
上一篇文章一个优秀的C#开源绘图软件 DrawTools中详细的介绍了DrawTools的几种演化的较高版本的软件的特色与功能. 这篇文章,将介绍一下这款软件的成名版本, 下载地址DrawTool_O ...
- Eclipse Tomcat配置/管理/调试指南
从myeclipse转到Eclipse最不方便的之一莫过于Web项目部署了,老是在想怎么不能把myeclipse的那个移植过来,或者有没有高人能按照Myeclipse开发一个,非常遗憾. 原版的Ecl ...
- mysql 用户权限设置【转】
在Linux下phpStudy集成开发环境中,要先进入mysql下bin目录,执行mysql ./mysql -u root -p 1.创建新用户 通过root用户登录之后创建 >> gr ...
- [Flex] ButtonBar系列——简单布局
<?xml version="1.0" encoding="utf-8"?> <!--通过layout属性,设置ButtonBar布局--&g ...
- Java SE 第二十四讲----static与final使用陷阱关键字
1.对于final类型成员变量,一般来说有两种赋值方式: a)在声明final类型的成员变量时就附上初值 package com.cl.staticandfinal; public class Fin ...
- Hdfs增量导入小文件合并的思路
1.使用mr进行合并 2.使用getmerge 将文件拉取到本地,再上传到hdfs,注意nl参数 3.使用appendToFile 4.使用hadoop提供的打包压缩技术 Usage: hadoop ...
- 走出测试,走向CEO
飞测说:大家好,我们又见面了,我是黑夜小怪.不巧,今晚加班回来路上,湿身了,淋了个落汤鸡,不过明天也许可以看海了,也就呵呵了,原本想回来后聊些技术的,现在突然想先聊聊我的一些想法,仅供交流. 走出测试 ...
- Flask框架学习笔记(API接口管理平台 V2.0)
博主今天把API接口管理平台发布到github了,这次是更新一些功能 如支持本地数据库sqlite3.优化了数据结构 技术方面跟之前V1.0相同,只增加生产本地数据:但是为了支持层级的参数,修改了数据 ...