目录

CentOS6.9安装MySQL

Linux安装MySQL的4种方式:

1. 二进制方式

特点:不需要安装,解压即可使用,不能定制功能

2. 编译安装

特点:可定制,安装慢

5.5之前: ./configure make make install

5.6之后: cmake gmake

3. rpm,yum

特点:安装方便,安装速度快,无法定制

4. 先编译,然后制作rpm,制作yum源,然后yum安装

特点:简单,速度快,可定制,比较复杂,制作时间长

企业选择:

中小企业:以上方式都可以,运维偏向编译安装,dba偏向选择二进制

大型企业:选择第四种

二进制安装步骤:

环境准备

Linux系统,这里以CentOS6.9作为演示

mysql安装包:mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz

安装

  1. 解压mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz,并拷贝到/application/mysql-5.7.24目录下

    mkdir -p /tools
    mkdir -p /application
    cd /tools
    tar -zxf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
    mv mysql-5.7.24-linux-glibc2.12-x86_64 /application/mysql-5.7.24 ln -s /application/mysql-5.7.24 /application/mysql5.7
  2. 添加mysql 用户

    useradd -s /sbin/nologin -M mysql
    
    # 提前创建安装目录
    mkdir -p /application/mysql-5.7.24
  3. 修改mysql工作目录权限

    chown -R mysql.mysql /application/mysql-5.7.24  /application/mysql5.7
  4. 安装mysql

    cd /application/mysql5.7
    
    ./bin/mysqld --initialize --user=mysql --basedir=/application/mysql5.7 --datadir=/application/mysql5.7/data
    
    # 执行完上诉命令,输出的信息中存在mysql的登录密码。(最后一行的最后一串字符就是密码)
  5. 将mysql启动命令复制到系统文件中

    cp  /application/mysql5.7/support-files/mysql.server   /etc/init.d/mysqld
  6. 将mysql的启动文件路径加入到系统环境变量中

    echo "PATH=/application/mysql5.7/bin:$PATH" >> /etc/profile
    
    . /etc/profile   # 让/etc/profile文件生效
  7. 配置mysql配置文件

    # 编辑配置文件
    vim /etc/my.cnf ************************以下为配置,直接复制粘贴***************************
    [mysql]
    socket=/application/mysql5.7/data/mysql.sock [mysqld]
    port=3306
    socket=/application/mysql5.7/data/mysql.sock
    basedir=/application/mysql5.7
    datadir=/application/mysql5.7/data
  8. 启动mysql服务

    /etc/init.d/mysqld start
  9. 登录mysql服务

    mysql -u root -p密码       # 密码是第4步中的内容
  10. 最后登录成功的界面

  11. 修改密码

    alter user user() identified by "新密码";

到这里二进制安装就结束了

编译安装步骤:

环境准备

Linux系统,这里以CentOS6.9作为演示

mysql安装包:mysql-5.6.37.tar.gz(后面步骤中有详细的地址)

安装

  1. 安装依赖包

    yum install -y ncurses-devel libaio-devel gcc gcc-c++
  2. 安装cmake,编译器

    yum install cmake -y
  3. 创建用户,供运行mysql使用

    useradd -s /sbin/nologin -M mysql
    
    # 提前创建安装目录
    mkdir -p /application/mysql-5.6.36
  4. 下载安装包

    wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37.tar.gz
  5. 解包

    tar -zxvf mysql-5.6.37.tar.gz
    
    # 进入对应的目录中
    cd mysql-5.6-37
  6. 编译

    cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.36 \
    -DMYSQL_DATADIR=/application/mysql-5.6.36/data \
    -DMYSQL_UNIX_ADDR=/application/mysql-5.6.36/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
    make && make install *******************************参数含义*****************************
    cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.37 \ # 指定安装目录,类似window选择目录安装软件,默认最后一级目录系统自动创建。
    -DMYSQL_DATADIR=/application/mysql-5.6.37/data \ # 指定数据目录,一般都是跟随安装下
    -DMYSQL_UNIX_ADDR=/application/mysql-5.6.37/tmp/mysql.sock \ # 指定sock文件位置
    -DDEFAULT_CHARSET=utf8 \ # 字符编码
    -DDEFAULT_COLLATION=utf8_general_ci \
    -DWITH_EXTRA_CHARSETS=all \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \ # 启用该引擎的支持。语法为:-DWITH_<ENGINE>_STORAGE_ENGINE=1 禁用语法为:-DWITHOUT_<ENGINE>_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
    make && make install # make 开始编译,make install 安装 **********************常见的编译参数*************************
    -DMYSQL_USER=mysql # 设置mysql服务的用户,必须真实存在
    -DMYSQL_TCP_PORT=3306 # 设置mysql服务的端口,默认为3306

更多编译请参考官方文档:https://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html#option_cmake_storage_engine_options

  1. 创建软连接

    ln -s /application/mysql-5.6.37  /application/mysql5.6
  2. 修改安装目录的权限

    chmod +w /application/mysql-5.6.37
    chmod +w /application/mysql5.6 chown -R mysql:mysql /application/mysql5.6
    chown -R mysql:mysql /application/mysql-5.6.37
  3. 复制配置文件到Linux系统目录下,并在/etc/my.cnf文件中添加如下内容

    cd /application/mysql-5.6.37
    
    cp -f support-files/my-default.cnf /etc/my.cnf
    
    # 在/etc/my.cnf中添加如下内容:
    -----------------------------/etc/my.cnf内容------------------------
    [mysql]
    socket=/application/mysql5.6/data/mysql.sock [mysqld]
    port=3306
    socket=/application/mysql5.6/data/mysql.sock
    basedir=/application/mysql5.6
    datadir=/application/mysql5.6/data
    -------------------------------------------------------------------
  4. 执行初始化配置脚本,创建系统自带的数据库和表,注意配置文件的路径

    cd /application/mysql5.6/scripts/
    
    ./mysql_install_db --defaults-file=/etc/my.cnf --basedir=/application/mysql5.6  --datadir=/application/mysql5.6/data  --user=mysql
    
    # --defaults-file   指定mysql的配置文件
    # --basedir 指定mysql工作目录
    # --datadir 指定mysql数据目录
    # -user 指定mysql软件运行的用户
  5. 将mysql启动文件拷贝到系统目录下(类似windows把软件的启动程序,拷贝到了桌面,有利于快速启动)

    cd /application/mysql5.6
    
    cp support-files/mysql.server  /etc/init.d/mysqld
  6. 授权mysqld文件执行权限

    chmod +x /etc/init.d/mysqld
  7. 设置开机自启动(根据自身爱好进行设置)

    chkconfig mysqld on
  8. 启动msyql服务

    /etc/init.d/mysqld start
  9. 把mysql服务的路径添加到环境变量中

    echo "PATH=/application/mysql5.6/bin:$PATH" >> /etc/profile
    
    . /etc/profile   # 让/etc/profile文件生效
  10. 设置mysql登录的密码

    /application/mysql5.6/bin/mysqladmin -u root password '新密码' -S /application/mysql5.6/data/mysql.sock
  11. 登录mysql服务

    mysql -uroot -p新密码   # 注意-p后面直接接密码,不要空格
  12. 登录成功后的界面如图

到这里mysql就安装完毕了,期间碰到了一些坑,好在全部都解决了。

CentOS6.9安装MySQL(编译安装、二进制安装)的更多相关文章

  1. Linux中MySQL5.6编译安装与MySQL5.7二进制安装步骤

    首先,介绍一下MySQL的几种安装方式 1.RPM.Yum 的安装方式:安装方便.安装速度快,无法定制 2.二进制:不需要安装,解压即可使用,不能定制功能 3.编译安装:可定制,安装慢. 编译安装中需 ...

  2. 20190418 CentOS7实用技能综合:系统安装 + WinScp客户端连接 + 防火墙端口号iptables + Nginx编译安装 + MySQL编译安装 + Redis编译安装 + MongoDB编译安装 + ActiveMQ/RocketMQ/RabbitMQ编译安装 + ...各类常用生产环境软件的编译安装

    系统安装 + WinScp客户端连接 + 防火墙端口号iptables + Nginx编译安装 + MySQL编译安装 + Redis编译安装 + MongoDB编译安装 + ActiveMQ/Roc ...

  3. 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 ...

  4. MySQL数据库的二进制安装、源码编译和基础入门操作

    一.MySQL安装 (1)安装方式: 1 .程序包yum安装 优点:安装快,简单 缺点:定死了各个文件的地方,需要修改里边的相关配置文件,很麻烦 2 .二进制格式的程序包:展开至特定路径,并经过简单配 ...

  5. Mysql数据库的二进制安装和基础入门操作

    前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...

  6. ubuntu上安装mysql 编译安装

    为什么要折腾?首先说明的是ubuntu上安装mysql等软件是非常容易简单的,其简单的程度盖过windows上的安装,一句sudo apt-get install就可以搞定.如果想用最简便的方法安装m ...

  7. 安装mysql ndb cluster二进制版本在linux上

    Installing an NDB Cluster Binary Release on Linux (官方安装手册)手册地址:https://dev.mysql.com/doc/refman/5.7/ ...

  8. liunx mysql 5.7 二进制安装

    liunx 5.6版本 本人安装次数不下20次,基本上按照正常的操作流程不会出现什么问题,一切顺利. 今天开发新项目需要按照mysql 5.7 版本.mysql 5.7版本和mysql 5.6版本变化 ...

  9. 在centos安装MySql的三种安装方法

    一.二进制安装MySql 1. 下载Mysql安装包 wget https://downloads.mysql.com/archives/get/file/mysql-5.6.40-linux-gli ...

随机推荐

  1. 怎么拆分一个Excel工作簿中的多个工作表?

    打开需要编辑的Excel文档.如图所示,工作簿下方有很多工作表.现在需要将这些工作表单独拆分开成一个个工作簿.   右键任意一个工作表标签,在弹出的下拉列表中选择查看代码.即弹出代码窗口.如下图所示. ...

  2. JS知识点查漏补缺

    知识点1: 判断语句中遇到NaN即为 False 只需要注意遇到False即为False即可 使用join(),toString()皆可以将数组转化为字符串 二者的相同点在于都可以转化数组为字符串 二 ...

  3. js 判断回文字符串

    回文字符串:字符串从前往后读和从后往前读字符顺序是一致的. 判断一个字符串是不是回文字符串 function isPalindrome(str) { var str1 = str.split(''). ...

  4. Vue-状态管理Vuex的使用

    vuex是状态管理,是为了解决跨组件之间数据共享问题的,一个组件的数据变化会映射到使用这个数据的其他组件当中.如果刷新页面,之前存储的vuex数据全部都会被初始化掉.以一个全局单例模式管理当应用遇到多 ...

  5. docker-install-v0.1-alpha

    Written by Zak Zhu docker-install-v0.1-alpha/ ├── inventory ├── roles │ └── docker │ ├── defaults │

  6. 浅谈python中__str__和__repr__的区别

    很多时候我们在创建一个类的时候,在终端打印类或者查看的时候一般都不会得到一个太满意的结果 class T: def __init__(self): self.color="red" ...

  7. Unity2018编辑器脚本趟坑记录

    解除预制体问题:(这个例子是解除游戏中的Canvas与Asset中的预制体的关系) if( PrefabUtility.IsAnyPrefabInstanceRoot(GameObject.Find( ...

  8. 【代码学习】PYTHON 文件I/O

    一.文件的打开和关闭 open(文件名,访问模式) cloese() 模式 描述 r 以只读方式打开文件.文件的指针将会放在文件的开头.这是默认模式. rb 以二进制格式打开一个文件用于只读.文件指针 ...

  9. 2019年7月22日A股科创板开板首日行情思考

    2019年7月22日A股科创板开板首日行情思考 原因:2019科创板开板交易 盘面:科创板交易活跃,首批上市25只股票大涨,最高达5倍涨幅:主板交投低迷,量能萎缩,大部分股票下跌. 操作:加仓 西安银 ...

  10. 在Visual Studio 2017中,.NET(C#)通过Oracle.ManagedDataAccess来连接Oracle数据库

    C#如何通过Oracle.ManagedDataAccess来连接Oracle数据库 1.先创建一个项目,鼠标右击项目中的引用,再点击管理NuGet程序包(也可以先下载dll文件,再选添加引用),在搜 ...