zoukankan      html  css  js  c++  java
  • centos6.6编译安装lnmp系列之mysql

    简介:

    环境:虚拟机+centos6.6

    Mysql版本:5.6.21

    Mysql下载地址:http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.21.tar.gz

    Cmake下载地址:http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gz

     

    1、安装前配置:

    vi /etc/sysconfig/iptables     开启防火墙端口

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT    添加3306端口

    Esc+:wq         退出

    service iptables restart   重新启动防火墙

    关闭selinux(原因我不知道,反正我在安装很多软件时候都做这个设置)

    Vi /etc/selinux/config

     

    把默认的都‘#’注销了,然后添加一条SELINUX=disabled

     

    我把 下载好的软件包存放在 /usr/local目录下,所以读者如果在参考文档时候和自己的存放目录不一致时候请按自己的存放目录进行修改

    运行yum库:

    yum install -y apr* autoconf automake bison bzip2 bzip2* cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng* libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2 libxml2-devel libXpm* libX* libtiff libtiff* make mpfr ncurses* ntp openssl nasm nasm* openssl-devel patch pcre-devel perl php-common php-gd policycoreutils ppl telnet t1lib t1lib* wget zlib-devel

     

    查看系统中是否存有旧版本的mysql,有旧版本的也让安装,但是启动mysql服务时候启动不了,

    所以要卸载mysql旧版本的才行,命令如下:

     

    yum remove mysql mysql-server mysql-libs compat-mysql

    我执行这条语句时候有旧版本

    Loaded plugins: fastestmirror, refresh-packagekit, security
    Setting up Remove Process
    No Match for argument: mysql
    Loading mirror speeds from cached hostfile
    * base: mirrors.163.com
    * extras: centos.ustc.edu.cn
    * updates: centos.ustc.edu.cn
    Package(s) mysql available, but not installed.
    No Match for argument: mysql-server
    Package(s) mysql-server available, but not installed.
    No Match for argument: compat-mysql
    Resolving Dependencies
    --> Running transaction check
    ---> Package mysql-libs.x86_64 0:5.1.73-3.el6_5 will be erased
    --> Processing Dependency: libmysqlclient.so.16()(64bit) for package: 2:postfix-2.6.6-6.el6_5.x86_64
    --> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: 2:postfix-2.6.6-6.el6_5.x86_64
    --> Processing Dependency: mysql-libs for package: 2:postfix-2.6.6-6.el6_5.x86_64
    --> Running transaction check
    ---> Package postfix.x86_64 2:2.6.6-6.el6_5 will be erased
    --> Processing Dependency: /usr/sbin/sendmail for package: cronie-1.4.4-12.el6.x86_64
    --> Running transaction check
    ---> Package cronie.x86_64 0:1.4.4-12.el6 will be erased
    --> Processing Dependency: cronie = 1.4.4-12.el6 for package: cronie-anacron-1.4.4-12.el6.x86_64
    --> Running transaction check
    ---> Package cronie-anacron.x86_64 0:1.4.4-12.el6 will be erased
    --> Processing Dependency: /etc/cron.d for package: crontabs-1.10-33.el6.noarch
    --> Processing Dependency: /etc/cron.d for package: sysstat-9.0.4-27.el6.x86_64
    --> Restarting Dependency Resolution with new changes.
    --> Running transaction check
    ---> Package crontabs.noarch 0:1.10-33.el6 will be erased
    ---> Package sysstat.x86_64 0:9.0.4-27.el6 will be erased
    --> Finished Dependency Resolution

    Dependencies Resolved

    =======================================================================================================================================
    Package Arch Version Repository Size
    =======================================================================================================================================
    Removing:
    mysql-libs x86_64 5.1.73-3.el6_5 @anaconda-CentOS-201410241409.x86_64/6.6 4.0 M
    Removing for dependencies:
    cronie x86_64 1.4.4-12.el6 @anaconda-CentOS-201410241409.x86_64/6.6 174 k
    cronie-anacron x86_64 1.4.4-12.el6 @anaconda-CentOS-201410241409.x86_64/6.6 43 k
    crontabs noarch 1.10-33.el6 @anaconda-CentOS-201410241409.x86_64/6.6 2.4 k
    postfix x86_64 2:2.6.6-6.el6_5 @anaconda-CentOS-201410241409.x86_64/6.6 9.7 M
    sysstat x86_64 9.0.4-27.el6 @anaconda-CentOS-201410241409.x86_64/6.6 825 k

    Transaction Summary
    =======================================================================================================================================
    Remove 6 Package(s)

    Installed size: 15 M

     

     

     

    需要卸载才行,反正按提示输入‘y’旧版本就卸载了,

    2、安装cmake

    cd /usr/local

     

    tar zxvf cmake-3.0.2.tar.gz

    执行上面命令解压;

    进入cmake-3.0.2目录,

    ./configure   执行编译

    make && make install    安装

    3、安装mysql

    groupadd mysql   添加mysql组

    useradd -g mysql mysql -s /bin/false  添加mysql用户到mysql组中

    mkdir -p /data/mysql    创建mysql的存放目录

    chown -R mysql:mysql /data/mysql    设置mysql数据库的存放权限

    *****如果这里出错进入到 cd /data  目录里面  

    chmod 777 mysql  直接赋予所有权限

    mkdir -p /usr/local/mysql  创建mysql的安装目录

     cd /usr/local   进入软件存放目录

     

    tar zxvf mysql-5.6.21.tar.gz  解压mysql

    cd mysql-5.6.21   进入mysql目录

     

    cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc

    make && make install   编译并安装

    rm -rf /etc/my.cnf  删除mysql的默认配置文件,要不然下面操作会有错误

    cd /usr/local/mysql   进入mysql的安装目录

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

    生成mysql的系统数据库

    ln -s /usr/local/mysql/my.cnf /etc/my.cnf   在/etc目录中添加软连接

    cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld   把mysql添加到系统启动

    chmod 755 /etc/init.d/mysqld  赋予 mysqld 执行权限

    *****如果这个操作出错 ,直接进入 cd /etc/init.d

    chmod  777 mysqld 直接赋予所有权限

    vi /etc/rc.d/init.d/mysqld  编辑mysqld启动项

     

    basedir=/usr/local/mysql

    datadir=/data/mysql

    Esc+:+wq! 保存退出

    vi /etc/profile  修改配置文件

     

     

    添加   export PATH=$PATH:/usr/local/mysql/bin

    Esc+:+wq!保存退出

    source /etc/profile 使配置文件生效

    service mysqld start

     

     

    有时候会出现这种情况:mysql 服务启动OK,登陆mysql时候出错,那么需要执行下面一句:ln -s /usr/local/mysql/bin/mysql /usr/bin

    好了,mysql算是安装完毕,我们验证下

     

    谢谢大家的支持,我在之前安装mysql时候有遇到过很多问题,在网上搜索教程很多都是抄的,本文参考  系统运维 » CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3   结合自己的情况整理出来符合我自己的学习习惯,在此谢谢前辈不留余力的分享!

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    前端脚手架的那些事儿
    CSS重置默认样式reset.css代码模板
    Web 3.0 前瞻:基于区块链的下一代浏览器
    关键词定位是网站推广的基础
    6年架构师针对web前端小白,作出的职业规划建议
    和程序员约会的优点和缺点
    如何在软件开发中避免出现漏洞
    Linux下修改时区
    前端需要掌握的Nginx知识
    Nginx入门指南
  • 原文地址:https://www.cnblogs.com/itor/p/4548374.html
Copyright © 2011-2022 走看看