相比较于MySQL的源代码安装来说。免编译二进制包的速度实在是快了太多,而且性能损失也不是很大,同时具有一定的定制性。所以,如果没有特殊的

需求,尽量用MySQL免编译二进制包来安装MySQL。

1.下载软件包

# 5.6版本应该都是可以的。具体版本自己选
# http://mirrors.163.com/mysql/Downloads/MySQL-5.6/
用的mysql-5.6.38-linux-glibc2.12-x86_64.tar.gz

2.依赖包安装

yum -y install libaio

3.进入/usr/local/src

cd /usr/local/src/

4.解压软件包

tar -xvf mysql-5.6.38-linux-glibc2.12-x86_64.tar.gz

5.将解压后的软件包移动到/usr/local并改名为mysql

mv mysql-5.6.38-linux-glibc2.12-x86_64 /usr/local/mysql

6.进入/usr/local/mysql

cd /usr/local/mysql

7.新建用户和数据目录

useradd -M  -s /sbin/nologin mysql
id mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql

8.初始化mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

9.修改配置文件

mv /etc/my.cnf /etc/my.mariadb.cnf.bak
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf sed -i 's@# basedir =@basedir = /usr/local/mysql@' /etc/my.cnf
sed -i 's@# datadir =@datadir = /data/mysql@' /etc/my.cnf
sed -i 's@# socket =@socket = /tmp/mysql.sock@' /etc/my.cnf

10.拷贝/usr/local/mysql/suppsupport-files/mysql.server启动脚本到/etc/init.d下

#需在/usc/local/mysql目录下
cp ./support-files/mysql.server /etc/init.d/mysqld

11.编辑 mysqld脚本

#修改如下内容
sed -i 's@basedir=$@basedir=/usr/local/mysql@' /etc/init.d/mysqld
sed -i 's@datadir=$@datadir=/data/mysql@' /etc/init.d/mysqld

12.将mysql设置为开机启动

# cd /etc/init.d/
chkconfig --add mysqld
chkconfig --list

13.设置PATH,否则不能直接调用mysql,修改/etc/profile文件,在文件末尾添加

echo 'export PATH=/usr/local/mysql/bin:$PATH' >>/etc/profile
#添加环境变量后,source或 . 生效
source /etc/profile
  1. 验证
/etc/init.d/mysqld start
netstat -nltup | grep :3306
ps aux | grep mysqld
lsof -i :3306

QA

Error: Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决:

yum -y install libaio

MySQL免编译二进制包安装简记的更多相关文章

  1. MySQL 8.0二进制包安装

    1.官方下载 https://dev.mysql.com/downloads/mysql/ 这样就可以下载二进制包了 1.删除之前安装的MySQL包 [root@localhost ~]# rpm - ...

  2. MySQL 5.6 二进制包安装配置多实例方法

    MySQL支持一台机器上启动多个实例,如果你的机器性能很好的话,启动多个实例将最大化利用你的服务器硬件资源. MySQL多实例一般有两种配置方法: 1.官方推荐的mysqld_multi方式,多个实例 ...

  3. liunx系统二进制包安装编译mysql数据库

    liunx系统二进制包安装编译mysql数据库 # 解压二进制压缩包 [root@localhost ~]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz -C ...

  4. 二进制包安装MySQL数据库

    1.1二进制包安装MySQL数据库 1.1.1 安装前准备(规范) [root@Mysql_server ~]# mkdir -p /home/zhurui/tools ##创建指定工具包存放路径 [ ...

  5. Mysql 通用二进制包安装

    通用二进制包安装 注意:这里有严格的平台问题: 使用时:centos5.5版本   (类似Windows下的绿色包) 下载(mirrors.sohu.com/mysql)   直接使用tar 解压到指 ...

  6. MySQL二进制包安装

    mysql的安装有多种方法,这里就介绍一下二进制包安装. [root@node1 ~]# tar xvf mysql-5.7.27-linux-glibc2.12-x86_64.tar [root@n ...

  7. MySQL二进制包安装及启动问题排查

    环境部署:VMware10.0+CentOS6.9(64位)+MySQL5.7.19(64位)一.操作系统调整 # 更改时区 .先查看时区 [root@localhost ~]# date -R Tu ...

  8. kubernetes实践之一:kubernetes二进制包安装

    kubernetes二进制部署 1.环境规划 软件 版本 Linux操作系统 CentOS Linux release 7.6.1810 (Core) Kubernetes 1.9 Docker 18 ...

  9. MySQL5.7单实例二进制包安装方法

    MySQL5.7单实例二进制包安装方法 一.环境 OS: CentOS release 6.9 (Final)MySQL: mysql-5.7.20-linux-glibc2.12-x86_64.ta ...

随机推荐

  1. Java基础知识盘点(二)- 集合篇

    List和Set区别 List和Set都是继承Collection接口 List特点:元素有放入顺序,元素可重复 Set特点:元素无放入顺序,元素不可重复 Set和List对比: Set:检索元素效率 ...

  2. 如何快速连接无线Wifi 使用二维码

    无线Wifi现在已经很普及了,无论是在家.还是在单位.书店.餐馆.咖啡馆等公共场所,只要手机打开Wifi,选择相应的无线Wifi热点,手工输入密码后,即可通过无线Wifi访问互联网. 如何让用户更方便 ...

  3. 最近在写h5的页面,发现有一款框架还不错给大家推荐一下

    wui 说一下自己写项目的体会吧,自我感觉wui还不错,能够让自己很快地把页面布局好,而且里面一些js效果也不用自己去手写jQuery代码很方便,下面让我们一起来认识一下wui这个框架吧 1,acco ...

  4. load data导txt文件进mysql中的数据

    1.实验内容: 利用SQL语句“load data ”将“.txt”文本文件中的数据导入到mysql中 2.实验过程: 首先我创了一个txt(也可以是其他的),设置其编码为utf-8,在windows ...

  5. flutter -------- GridView的使用

    使用GridView将widget放置为二维列表. GridView提供了两个预制list,或者您可以构建自定义网格.当GridView检测到其内容太长而不适合渲染框时,它会自动滚动. GridVie ...

  6. 数学运算比IF要快

    问题 虽然很早就知道,CPU在处理 if 这样的判断语句时,使用了预测的技术,所以如果条件总是一个结果,效率就很好.反过来说,如果你使用数学运算避免 if 判断,那么就意味着性能一定比 if 要好. ...

  7. ZYNQ DMA驱动及测试分析

    之前没有接触过DMA驱动.不了解它的原理,稍作学习先总结下dma驱动步骤: 1. 申请DMA中断. 2. 申请内存空间作为src和dts的空间. 3. 注册设备注册节点 4. 将申请到的src和dst ...

  8. 乐观锁vs悲观锁, 集群vs分布式 , 微服务, 幂等性

    乐观锁: 总认为不会产生并发问题,因此不会上锁,更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CAS操作来实现 version: 数据上有数据版本号version字段,每次更 ...

  9. python - 列表,元组

    1.列表       定义:能装对象的对象     在python中使用[] 来描述列表,内部元素用逗号隔开,对数据类型没有要求.     列表存在索引和切片,和字符串的操作是一样的   2.列表相关 ...

  10. 像调试java一样来调试Redis lua

    高并发的系统中,redis的使用是非常频繁的,而lua脚本则更是锦上添花.因为lua脚本本身执行的时候是一个事务性的操作,不会掺杂其他外部的命令,所以很多关键的系统节点都会用redis+lua来实现一 ...