澳门金沙30064在线网站:linux安装mysql5.6(详细)

By admin in 计算机教程 on 2019年5月26日

为了学习mycat 尝试在虚拟机上装mysql,但装了两次都没成功。因此总结了一下 
 

以前的Linux系统中数据库大部分是mysql,不过自从被sun收购之后,就没用集成在centos这些开源Linux系统中了,那么如果想用的话就需要自己安装了,首先centos7
已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb。centos7安装mysql5.7跟之前的还是有些不一样的地方容易踩坑
个人废了些许时间才搞定 现记录下来 给各位后人参考 避免踩坑!

mysql-5.6.26.tar.gz百度云分享地址
: https://pan.baidu.com/s/1tlpsQteqU84rbp3uDJJe7Q   密码:0ysc

ccentos6
源码安装mysql5.6可参考这篇文章http://blog.csdn.net/hardworking0323/article/details/51227801按步骤走
实测没有问题

(1)卸载虚拟机自带的mysql相关包  

       本文是参考该文章后 修改的 centos7 源码安装mysql5.7 的正确步骤

   rpm -qa | grep mysql      查找相关包

部署环境 

        rpm -e –nodeps  名称    卸载 

操作系统:CentOS-7x86_64-bin-DVD1.iso

 

MySQL 版本:mysql-5.7.21.tar.gz   (ps:此处下载的是源码包  MySQL
Community Server 5.7.21 选择sorce code

(2)新增mysql 用户组添加mysql用户,并将mysql用户添加至用户组

https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.21.tar.gz

  groupadd   mysql

特别注意:操作之前需要对操作系统进行网络配置,防火墙关闭(centos7是firewalld),hostname设置,关闭
selinux(请修改/etc/selinux/config,将 SELINUX 改为 disabled)。

  useradd -r -g mysql mysql

                      此部分操作可参考mysql5.6安装步骤。

 

一.卸载mariadb

(3)创建数据库所需目录

1.rpm -qa | grep mariadb 检查数据库自带版本

   mkdir -p  /usr/local/mysql

2.rpm -e –nodeps mariadb-libs-5.5.37-1.el7_0.x86_64  强制卸载

   mkdir -p /home/mysql/data

二.创建用户跟相关文件目录

  mkdir -p /home/mysql/logs

1、新增 mysql 用户组:

  mkdir -p /home/mysql/temp

 groupadd mysql

(4)添加环境变量使mysql命令生效

2、新增mysql用户,并添加到mysql用户组:

     编辑:  profile  vi  /etc/profile

#useradd -r -g mysql mysql

  配置环境变量:  # mysql env param

3、新建 MySQL 执行文件目录(后面会把编译好的 mysql 程序安装到这个目录):

           PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

#mkdir -p /usr/local/mysql

             export PATH

(-p参数的作用是:如果最终目录的父目录不存在也会一并创建)

(5)刷新文件目录

 4、新建 MySQL 数据库数据文件目录:

  source  /etc/profile

# mkdir -p /home/mysql/data

(6) 安装mysql依赖包(防止编译安装mysql是报错)

# mkdir -p /home/mysql/logs

  yum install make cmake gcc gcc-c++ bison bison-devel ncurses
ncurses-devel antoconf automake

# mkdir -p /home/mysql/temp

 

(注意:上面的logs 及temp 目录是为了以后将MySQL 的数据文件与执行程序文件分离,如果你打算设置到不同的路径,注意修改对应的执行命令和数据库初始化脚本。正式生产环 境,建议数据目录和日志目录都使用单独的分区来挂载,不同分区属于不同的磁盘或磁盘组。)

 (7)将 tar 上传至  /usr/local/mysql/src    (如果有没src文件则创建 
mkdir -p  /usr/local/mysql/src)

5、修改mysql目录拥有者为mysql用户:

(8)解压

# chown -Rf mysql:mysql /usr/local/mysql

  tar -zxvf 文件名

# chown -Rf mysql:mysql /home/mysql

 (9)进入mysql解压后的目录   执行以下命令
  作用:mysql安装前的属性设置    

 6、增加 PATH 环境变量搜索路径: 

  cmake \

#vi /etc/profile

  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

##在profile文件末尾增加两行

  -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

# mysql env param

  -DDEFAULT_CHARSET=utf8 \

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

  -DDEFAULT_COLLATION=utf8_general_ci \

export PATH

  -DWITH_MYISAM_STORAGE_ENGINE=1 \

使 PATH 搜索路径立即生效:

  -DWITH_INNOBASE_STORAGE_ENGINE=1 \

#source /etc/profile

  -DWITH_ARCHIVE_STORAGE_ENGINE=1 \

三.安装编译

  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

1、安装编译mysql需要的依赖包

  -DWITH_MEMORY_STORAGE_ENGINE=1 \

yum install make cmake gcc gcc-c++ bison bison-devel  ncurses
ncurses-devel  autoconf  automake

  -DWITH_READLINE=1 \

2.进入/usr/local/src 下载后解压源码压缩包

  -DENABLED_LOCAL_INFILE=1 \

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.21.tar.gz

  -DMYSQL_DATADIR=/home/mysql/data \

tar
-zxvfmysql-5.7.21.tar.gz

  -DMYSQL_USER=mysql \

3.cmake操作前的boost下载解压

  -DMSLQ_TCP_PORT=3306 \

centos7执行cmake指令 会报错 需要自己下载安装boost

  -DENABLE_DOWNLOADS=1

(1)创建boost目录 

 

mkdir -p /usr/local/boost

(10)编译 :make   (时间较长)

(2)进入boost目录后 下载解压  

(11)安装:make install

cd /usr/local/boost

(12)清除安装文件:make clean

wget –no-check-certificate
http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost\_1\_59\_0.tar.gz

(13)将  /usr/local/mysql 目录 和 /home/mysql  目录的权限设为
mysql用户所有

tar -zxvf boost_1_59_0.tar.gz

    chown -Rf mysql:mysql /usr/local/mysql

3.进入mysql源码解压目录 编译安装

    chown -Rf mysql:mysql /home/mysql

1、进入加压目录 

 

cd
/usr/local/src/mysql-5.7.21

(14)进入mysql安装/usr/local/mysql u目录执行数据库的 初始化脚本
并生成my.cnf文件  作用 :用于mysql自带的 数据库 和 表的初始化 

2.执行cmake 指令

     注意 :此时将/home/data目录  作为数据存放的目录

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DDEFAULT_CHARSET=utf8
 -DDEFAULT_COLLATION=utf8_general_ci
 -DWITH_MYISAM_STORAGE_ENGINE=1  -DWITH_INNOBASE_STORAGE_ENGINE=1
 -DWITH_ARCHIVE_STORAGE_ENGINE=1
 -DWITH_BLACKHOLE_STORAGE_ENGINE=1  -DWITH_MEMORY_STORAGE_ENGINE=1
 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1
 -DMYSQL_DATADIR=/home/mysql/data  -DMYSQL_USER=mysql
 -DMYSQL_TCP_PORT=3306  -DENABLE_DOWNLOADS=1 

    scripts/mysql_install_db –user=mysql
–basedir=/usr/local/mysql –datadir=/home/mysql/data

 -DWITH_BOOST=/usr/local/boost

 

配置解释: 

(15)将my.cnf 文件的所属权限改成 mysql用户

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 设置安装目录 

  chown -Rf mysql:mysql /usr/local/mysql/my.cnf

-DMYSQL_DATADIR=/home/mysql/data 设置数据库存放目录 

  特别注意  : 在默认系统中 etc/目录下也会有一个 my.cnf文件  ,当mysql服务启动时会默认 先读取/etc/my.cnf 文件  ,如果/etc/my.cnf 不存在则会到 mysql的安装目录

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock设置 UNIX socket 目录

        下读取 my.cnf文件  ,因此需将 /etc/my.cnf 文件 改成其他名字 ,否则会干扰到mysql安装目录下的 my.cnf文件   

-DMYSQL_USER=mysql 设置运行用户 

        但是在生产环境上 建议使用  /etc/my.cnf 文件  ,  这里也是用 /etc/my.cnf  步骤如下:

-DDEFAULT_CHARSET=utf8 设置默认字符集,默认 latin1

          1)、编辑my.cnf文件   将所有内容删除

-DEFAULT_COLLATION=utf8_general_ci
设置默认校对规则,默认 latin1_general_ci
-DWITH_INNOBASE_STORAGE_ENGINE=1 添加 InnoDB 引擎支持

            vi /ect/my.cnf

-DENABLE_DOWNLOADS=1 自动下载可选文件,比如自动下载谷歌的测试包 

        2)、拷贝如下配置 粘贴至 my.cnf文件 保存

-DMYSQL_TCP_PORT=3306 设置服务器监听端口,默认 3306

          [client]

-DSYSCONFDIR=/etc 设置 my.cnf 所在目录,默认为安装目录) 

          port = 3306

cmake 结束后开始编译源码,这一步时间会较长,请耐心等待

          socket = /usr/local/mysql/mysql.sock 

3. 安装编译的源码 

          [mysqld]

  make install

          character-set-server = utf8

(注意:如果需要重装mysql,在/usr/local/src/mysql-5.6.22在执行下make
install 就可以了,不需要再cmake 和make)

          collation-server  = utf8_general_ci

  1. 清除临时文件

          skip-external-locking

 make clean

          skip-name-resolve

四.配置启动文件及环境变更

          user = mysql

1.从模板文件复制启动文件

          port = 3306

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

          basedir = /usr/local/mysql

2.修改启动文件:

          datadir = /home/mysql/data

vim /etc/init.d/mysqld

          tmpdir = /home/mysql/temp 

找到如下二行:

          # server_id = …..

basedir=datadir=

          socket = /usr/local/mysql/mysql.sock

修改为:

          log-error = /home/mysql/logs/mysql_error.log

basedir=/usr/local/mysql/datadir=/home/mysql/data

          pid-file  = /home/mysql/mysql.pid

3.创建my.cnf  mysql5.7后 模板文件 没有my.cnf配置文件 需要自己创建

          open_files_limit  = 10240

touch  /etc/my.cnf

          back_log = 600

#vi /etc/my.cnf

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 澳门金沙30064在线网站 版权所有