安装MySQL的方式常见的有三种:

rpm包形式

通用二进制形式

源码编译

1,rpm包形式

(1) 操作系统发行商提供的

(2) MySQL官方提供的(版本更新,修复了更多常见BUG)www.mysql.com/downloads

关于MySQL中rpm包类型的介绍:

MySQL-client         客户端组件 
 MySQL-debuginfo      调试MySQL的组件 
 MySQL-devel          想针对于MySQL编译安装PHP等依赖于MySQL的组件包 
 MySQL-embedded       MySQL的嵌入式版本 
 MySQL-server         共享库 
 MySQL-shared         共享库 
 MySQL-shared-dompat  为了兼容老版本的共享库 
 MySQL-test           MySQL的测试组件(在线处理功能)

安装方法:

首先可以从安装光盘中或者到mysql的网站上下载对应版本的rpm包如下:

MySQL-server-community-5.5.28-1.rhel5.i386.rpm  
MySQL-client-community-5.5.28-1.rhel5.i386.rpm 

接着我们可以使用rpm命令进行安装:

rpm -ivh MySQL-server-community-5.5.28-1.rhel5.i386.rpm 
rpm -ivh MySQL-client-community-5.5.28-1.rhel5.i386.rpm

补充一点:

-h 使用符号#显示安装进度 
-v 报告每一步操作的情况

2,通用二进制包

(1)新建用户以安全方式运行进程:

1
2
3
groupadd -r mysql
useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql
chown -R mysql:mysql /mydata/data

(2)安装并初始化mysql-5.5.28

首先下载平台对应的mysql版本至本地,这里是32位平台,因此,选择的为mysql-5.5.28-linux2.6-i686.tar.gz

1
2
3
4
5
6
7
tar xf mysql-5.5.28-linux2.6-i686.tar.gz -C /usr/local
 cd /usr/local/
 ln -sv mysql-5.5.28-linux2.6-i686 mysql
 cd mysql
 chown -R mysql:mysql .
 scripts/mysql_install_db --user=mysql --datadir=/mydata/data
 chown -R root .

(3)为mysql提供主配置文件:

1
2
cd /usr/local/mysql
cp support-files/my-large.cnf /etc/my.cnf

(4)修改配置文件:

修改此文件中thread_concurrency的值为你的CPU个数乘以2,比如这里使用如下行:

thread_concurrency = 2

另外还需要添加如下行指定mysql数据文件的存放位置:

datadir = /mydata/data

(5)为mysql提供sysv服务脚本:

1
2
cd /usr/local/mysql
 cp support-files/mysql.server /etc/rc.d/init.d/mysqld

(6)添加至服务列表:

1
2
chkconfig --add mysqld
chkconfig mysqld on

(7)而后就可以启动服务测试使用了。

1
service mysqld start

3,源码编译

(安装编译方式有点改变,配置过程无太大变动,所以后面不详细介绍各个步骤了)
若想在5.0系列的红帽系统上进行源码编译安装MySQL必须借助一个跨平台编译器cmake

所以:

(1)首先安装cmake

安装cmake需要用make

1
2
3
4
5
tar xf cmake-...tar.gz
cd cmake-..
./bootstrap  使用此脚本来检测编译环境
make
make install

(2)编译安装mysql-5.5.28

使用cmake编译mysql-5.5.28,选项的方式有所改变简单介绍一下。。。

cmake指定编译选项的方式不同于make,其实现方式如下:

cmake .

cmake . -LH 或 ccmake .        查找可以使用的相关选项

指定安装文件的安装路径时常用的选项:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql         指定安装路径 
-DMYSQL_DATADIR=/data/mysql                     数据安装路径 
-DSYSCONFDIR=/etc                               配置文件的安装路径

由于MySQL支持很多的存储引擎而默认编译的存储引擎包括:csv、myisam、myisammrg和heap。若要安装其它存储引擎,可以使用类似如下编译选项:

-DWITH_INNOBASE_STORAGE_ENGINE=1          安装INNOBASE存储引擎 
-DWITH_ARCHIVE_STORAGE_ENGINE=1           安装ARCHIVE存储引擎 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1         安装BLACKHOLE存储引擎 
-DWITH_FEDERATED_STORAGE_ENGINE=1         安装FEDERATED存储引擎

若要明确指定不编译某存储引擎,可以使用类似如下的选项:

-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1

比如:

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1        不启用或不编译EXAMPLE存储引擎 
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1 
-DWITHOUT_PARTITION_STORAGE_ENGINE=1

如若要编译进其它功能,如SSL等,则可使用类似如下选项来实现编译时使用某库或不使用某库:

-DWITH_READLINE=1 
-DWITH_SSL=system           表示使用系统上的自带的SSL库 
-DWITH_ZLIB=system 
-DWITH_LIBWRAP=0

其它常用的选项:

-DMYSQL_TCP_PORT=3306                       设置默认端口的 
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock           MySQL进程间通信的套接字的位置 
-DENABLED_LOCAL_INFILE=1                    是否启动本地的LOCAL_INFILE 
-DEXTRA_CHARSETS=all                        支持哪些额外的字符集 
-DDEFAULT_CHARSET=utf8                      默认字符集 
-DDEFAULT_COLLATION=utf8_general_ci         默认的字符集排序规则 
-DWITH_DEBUG=0                              是否启动DEBUG功能 
-DENABLE_PROFILING=1                        是否启用性能分析功能

如果想清理此前的编译所生成的文件,则需要使用如下命令:

make clean 
rm CMakeCache.txt

编译安装

1
2
3
4
5
6
7
8
9
10
11
12
13
tar xf mysql-5.5.28.tar.gz
 cd mysql-5.5.28
 groupadd -r mysql
 useradd -g -r mysql mysql
 mkdir -pv /data/mydata
 chown -R mysql:mysql /data/mydata
 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mydata -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
 make
 make install
 cd /usr/local/mysql
 chown -R :mysql . 更改属组
 scripts/mysql_install_db --user=mysql --datadir=/data/mydata/ 指定数据存放位置
 cp support-files/my-large.cnf /etc/my.cnf  创建配置文件

编辑配置文件

vim /etc/my.cnf

添加如下行指定mysql数据文件的存放位置:

datadir = /mydata/data

创建执行脚本和启动服务

1
2
3
4
5
cp support-files/mysql.server /etc/rc.d/init.d/mysqld 复制脚本
 chmod +x /etc/rc.d/init.d/mysqld 执行权限
 chkconfig -add mysql 添加到服务列表中
 service mysqld start  启动服务
 bin/mysql    启动mysql

mysql的三种安装方式(详细)的更多相关文章

  1. Linux下rpm、yum和源码三种安装方式详细介绍

    第1章 源码安装 源码包安装会比RPM包安装慢,是因为RPM的软件包是根据特定系统和平台而指定的,经常一种 程序会提供很多RPM包的格式,用户根据系统情况选择适合的RPM包直接安装,而源码包相当于 通 ...

  2. grub安装的 三种安装方式

    1. 引言 grub是什么?最常态的理解,grub是一个bootloader或者是一个bootmanager,通过grub可以引导种类丰富的系统,如linux.freebsd.windows等.但一旦 ...

  3. 【转】vue.js三种安装方式

    Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...

  4. vue.js三种安装方式

    Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...

  5. Hive的三种安装方式(内嵌模式,本地模式远程模式)

    一.安装模式介绍:     Hive官网上介绍了Hive的3种安装方式,分别对应不同的应用场景.     1.内嵌模式(元数据保村在内嵌的derby种,允许一个会话链接,尝试多个会话链接时会报错)   ...

  6. EF三种编程方式详细图文教程(C#+EF)之Database First

    Entity Framework4.1之前EF支持“Database First”和“Model First”编程方式,从EF4.1开始EF开始支持支持“Code First”编程方式,今天简单看一下 ...

  7. mysql的三种连接方式

    SQL的三种连接方式分为:左外连接.右外连接.内连接,专业术语分别为:LEFT JOIN.RIGHT JOING.INNER JOIN 内连接INNER JOIN:使用比较运算符来根据指定的连接的每个 ...

  8. mysql学习之-三种安装方式与版本介绍

    MYSQL版本介绍 mysql分alpha,beta,rc,GA四个版本. alpha  暗示这是一个以展示新特性为目的的版本,存在比较多的不稳定因素,还会向代码中添加新新特性beta 以后的beta ...

  9. EF三种编程方式详细图文教程(C#+EF)之Code First

    Code First Code First模式我们称之为“代码优先”模式,是从EF4.1开始新建加入的功能.使用Code First模式进行EF开发时开发人员只需要编写对应的数据类(其实就是领域模型的 ...

随机推荐

  1. Ansible 小手册系列 二十(经常遇到的问题)

    (1). 怎么为任务设置环境变量? - name: set environment shell: echo $PATH $SOME >> /tmp/a.txt environment: P ...

  2. scala学习之实现RPC通信

    最近学习scala,个人感觉非常灵活,实现rpc通信非常简单,函数式编程比较烧脑 1.搭建工程 创建scala maven 工程 项目pom文件 <project xmlns="htt ...

  3. Javascript-- jQuery动画篇(淡入淡出效果)

    淡入淡出效果 jQuery 提供了下面几种方法可以实现显示的淡入淡出效果: fadeIn() fadeOut() fadeToggle() fadeTo() fadeIn()方法 fadeIn()实现 ...

  4. PentesterLab-PHP Include And Post Exploitation

    一.打开页面,看到这么个页面,按照惯例随手点一点 二.Login处显然是一个后台登录页面,但前提是的有账号密码,看了下Submit这个页面,发现url中有个page参数 三.nikto跑一下这个页面. ...

  5. Linux真随机数的生成

    今天看<白帽子讲WEB安全>一书,看到笔者谈到Linux如何实现真随机数生成,感觉非常有用,记录下来 #include<iostream> using namespace st ...

  6. awk与sed:一个关于多行处理的例子

    前几天在CSDN上看到一个帖子http://bbs.csdn.net/topics/390848841,楼主贴了下面的问题: 例: 12345 67890 1234567890 123 4567890 ...

  7. 添加机构organizations模块

    startapp organizations models内容: from django.db import models from datetime import datetime # Create ...

  8. echarts-detail---散点图

    data4 = [{ xAxis: result.AvgEvaluate, seriesId: ', name: '基干360综合分' }, { yAxis: evalue, seriesId: ', ...

  9. Unity3D内存优化案例讲解

    笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解 ...

  10. 4. 什么是应用服务器? - JavaEE基础系列

    本文是JavaEE基础系列的第四节. Java EE简介 - JavaEE基础系列 JSR简介 - JavaEE基础系列 什么是JSR参考实现? - JavaEE基础系列 上一节介绍了什么是JSR参考 ...