一.二进制安装MySql

1. 下载Mysql安装包

wget https://downloads.mysql.com/archives/get/file/mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz

如果没有wget 可以先下载weget

2. 下载初始化依赖

yum install libaio-devel autoconf -y

3. 解压压缩包

tar xf /root/mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz

4.移动解压后sql文件到/usr/local/目录下

mv /root/mysql-5.6.40-linux-glibc2.12-x86_64 /usr/local/mysql-5.6.40

5.建立软连接

ln -s /usr/local/mysql-5.6.40 /usr/local/mysql

6.拷贝启动脚本

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

7.覆盖配置文件

rm -f /etc/my.cnf && cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

8.创建mysql用户

useradd mysql -s /sbin/nologin -M

9.初始化

/usr/local/mysql-5.6.40/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

10 授权

chown -R mysql.mysql /usr/local/mysql*

11.添加环境变量

echo 'export PATH="/usr/local/mysql/bin:$PATH"' > /etc/profile.d/mysql.sh

12.加载环境变量

source /etc/profile

13.启动MySql

/etc/init.d/mysqld start

二.源码安装mysql

1)安装依赖
[root@elk02 ~]# yum install -y ncurses-devel libaio-devel cmake
2)解压
[root@elk02 ~]# tar xf mysql-5.6.40.tar.gz
3)创建MySQL用户
[root@elk02 ~]# useradd mysql -s /sbin/nologin -M
4)生成编译文件
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.40 \
-DMYSQL_DATADIR=/usr/local/mysql-5.6.40/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.40/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
5)编译
make
6)安装
make install
7)做软连接
[root@elk02 mysql-5.6.40]# ln -s /usr/local/mysql-5.6.40 /usr/local/mysql
8)拷贝配置文件
[root@elk02 support-files]# cp my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
9)拷贝启动脚本
[root@elk02 support-files]# cp mysql.server /etc/init.d/mysqld
10)初始化
[root@elk02 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
11)创建socket存放目录
[root@elk02 support-files]# mkdir /usr/local/mysql-5.6.40/tmp
12)授权
[root@elk02 support-files]# chown -R mysql.mysql /usr/local/mysql*
13)添加环境变量
[root@elk02 support-files]# vim /etc/profile.d/mysql.sh
export PATH="/usr/local/mysql/bin:$PATH"
14)加载环境变量
[root@elk02 support-files]# source /etc/profile
15)启动MySQL
[root@elk02 support-files]# /etc/init.d/mysqld start

三.多实例安装mysql

什么是MySQL多实例?

多进程+多线程+多个预先分配内存结构

简言之,在一个系统中安装多个mysql服务端.

需要多个配置文件:

  1)多个端口
  2)多个数据目录
  3)多个socket文件

./mysql_install_db --user --basedir --datadir

1)创建多个数据目录
[root@elk01 ~]# mkdir -p /data/330{7..9}
2)创建多个配置文件

vim /data/3307/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /data/3307/data
port = 3307
server_id = 7
log-bin = /data/3307/data/mysql-bin
log_error = /data/3307/data/mysql.err
socket = /data/3307/data/mysql.sock

vim /data/3308/my.cnf

[mysqld]
basedir = /usr/local/mysql
datadir = /data/3308/data
port = 3308
server_id = 8
log-bin = /data/3308/data/mysql-bin
log_error = /data/3308/data/mysql.err
socket = /data/3308/data/mysql.sock

vim /data/3309/my.cnf

[mysqld]
basedir = /usr/local/mysql
datadir = /data/3309/data
port = 3309
server_id = 9
log-bin = /data/3309/data/mysql-bin
log_error = /data/3309/data/mysql.err
socket = /data/3309/data/mysql.sock

3)初始化
[root@elk01 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/data
[root@elk01 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3308/data
[root@elk01 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3309/data

4)启动MySQL
[root@elk01 scripts]# mysqld_safe --defaults-file=/data/3307/my.cnf &
[root@elk01 scripts]# mysqld_safe --defaults-file=/data/3308/my.cnf &
[root@elk01 scripts]# mysqld_safe --defaults-file=/data/3309/my.cnf &

5)设置密码
[root@elk01 scripts]# mysqladmin -uroot -S /data/3307/data/mysql.sock password '3307'
[root@elk01 scripts]# mysqladmin -uroot -S /data/3308/data/mysql.sock password '3308'
[root@elk01 scripts]# mysqladmin -uroot -S /data/3309/data/mysql.sock password '3309'

6)查看
[root@elk01 scripts]# mysql -uroot -p3307 -S /data/3307/data/mysql.sock -e "show variables like 'server_id'"
Warning: Using a password on the command line interface can be insecure.
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 7 |
+---------------+-------+
[root@elk01 scripts]# mysql -uroot -p3308 -S /data/3308/data/mysql.sock -e "show variables like 'server_id'"
Warning: Using a password on the command line interface can be insecure.
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 8 |
+---------------+-------+
[root@elk01 scripts]# mysql -uroot -p3309 -S /data/3309/data/mysql.sock -e "show variables like 'server_id'"
Warning: Using a password on the command line interface can be insecure.
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 9 |
+---------------+-------+

[root@elk01 scripts]# vim /usr/local/bin/mysql3307
mysql -uroot -p3307 -S /data/3307/data/mysql.sock

[root@elk01 scripts]# vim /usr/local/bin/mysql3308
mysql -uroot -p3308 -S /data/3308/data/mysql.sock

[root@elk01 scripts]# vim /usr/local/bin/mysql3309
mysql -uroot -p3309 -S /data/3309/data/mysql.sock

[root@elk01 scripts]# chmod +x /usr/local/bin/mysql330*

在centos安装MySql的三种安装方法的更多相关文章

  1. centOS下 JDK的三种安装方式

    由于各Linux开发厂商的不同,因此不同开发厂商的Linux版本操作细节也不一样,今天就来说一下CentOS下JDK的安装: 方法一:手动解压JDK的压缩包,然后设置环境变量 1.在/usr/目录下创 ...

  2. linux下安装mysql的三种方法:rpm包安装、yum安装、源码包安装

    1 安装MySQL数据库服务器安装方法一://查询系统自带的数据库rpm -qa | grep -i mysql //卸载查询到的所有mysqlrpm -e --nodeps mysql-libs-5 ...

  3. mysql的三种安装方式(详细)

    安装MySQL的方式常见的有三种: rpm包形式 通用二进制形式 源码编译 1,rpm包形式 (1) 操作系统发行商提供的 (2) MySQL官方提供的(版本更新,修复了更多常见BUG)www.mys ...

  4. CentOS中JDK的三种配置方法

    第一种方法(相对稳妥): 使用yum直接安装,在root用户下执行 "yum install java-openjdk-*" 第二种方法(最为稳妥): 前往'https://www ...

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

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

  6. CentOS 6.9上安装Mysql 5.7.18 安装

    CentOS 6.9上安装Mysql 5.7.18 安装 下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-g ...

  7. BayaiM__Linux安装MySQL的两种方法

    BayaiM__Linux安装MySQL的两种方法     < 以下内容,纯属抄袭,如有雷同,爱咋咋地 >  阅读(21210) | 评论(4340) | 转发(5660) | 删除 编辑 ...

  8. Linux CentOS7 VMware 安装软件包的三种方法、rpm包介绍、rpm工具用法、yum工具用法、yum搭建本地仓库

    一.安装软件包的三种方法 Linux下游三种安装方法,rpm工具.yum工具.源码包.rpm按装一个程序包时,有可能因为该程序包依赖另一个程序包而无法安装:yum工具,可以连同依赖的程序包一起安装. ...

  9. Hadoop三种安装模式:单机模式,伪分布式,真正分布式

    Hadoop三种安装模式:单机模式,伪分布式,真正分布式 一 单机模式standalone单 机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守 ...

随机推荐

  1. SLAM+语音机器人DIY系列:(三)感知与大脑——4.音响麦克风与摄像头

    摘要 在我的想象中机器人首先应该能自由的走来走去,然后应该能流利的与主人对话.朝着这个理想,我准备设计一个能自由行走,并且可以与人语音对话的机器人.实现的关键是让机器人能通过传感器感知周围环境,并通过 ...

  2. [转]How to: Create a Report Server Database (Reporting Services Configuration)

    本文转自:https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms157300%28v%3dsql.10 ...

  3. WebSocketSharp 的使用

    Server 端示例代码: class Program { static void Main(string[] args) { var wssv = new WebSocketServer(" ...

  4. postgresql如何让主键自增

    法一: Sql代码 收藏代码 CREATE TABLE customers ( customerid SERIAL primary key , companyname character varyin ...

  5. .Net Linq与Lambda表达式中GroupBy以多个字段分组

    一.引入 基本上熟悉C#语言的没有不知道Lambda表达式的,其对于数据的处理真的是太方便了.其中分组处理的GroupBy方法在List中的使用非常广泛.正式近期一个功能需求中又遇到了,而且是需要Gr ...

  6. 学JAVA第十二天,今天写java控制台输入流及String的类型转换

    今天老师讲了一天狗跳楼的问题,昨天解开始说了,今天都没讲新课, 所以,今天自学了Scanner类及String的类型转换 先来Scanner类实现键盘输入功能: 代码: package pkg1; i ...

  7. Python二级-----------程序冲刺1

    1. 仅使用 Python 基本语法,即不使用任何模块,编写 Python 程序计算下列数学表达式的结果并输出,小数点后保留3位.‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪ ...

  8. Android SingleTask使用注意点

    在ActivityA中,startActivityForResult到ActivityB,其中ActivityB设置为SingleTask. 那么在实际出现的现象为: ActivityA的onActi ...

  9. 基本服务器的AAA实验(Cisco PT)

    1.实验拓扑 2.不通网段间的ping通测试 从pc-a ping到pc-b 从pc-a ping到pc-c 从pc-b ping到pc-c 3.配置过程 a.在路由器R1上配置一个本地用户账号并且利 ...

  10. #035 大数阶乘 PTA题目6-10 阶乘计算升级版 (20 分)

    实际题目 本题要求实现一个打印非负整数阶乘的函数. 函数接口定义: void Print_Factorial ( const int N ); 其中N是用户传入的参数,其值不超过1000.如果N是非负 ...