zoukankan      html  css  js  c++  java
  • Linux 下编译安装MySQL

    最近在研究Mysql,当然先要把它安装在机器上才行呀。记录下操作,加深记忆,也供以后参考。


    准备工作:

    Linux版本:Redhat Linux 6.4

    Mysql版本(安装包):mysql-5.6.16.tar.gz

    采取的安装方式:采用Cmake进行编译安装,所以先要安装Cmake才行。

    Cmake版本(安装包):cmake-2.8.12.2.tar.gz


    1、安装Cmake

    • Cmake的安装所需要的依赖关系,我就采用yum安装,直接搞定了:

    yum -y install ntp vim-enhanced gcc gcc-c++ flex bison autoconf automake bzip2-devel ncurses-devel zlib-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel libXpm-devel gettext-devel  pam-devel libtool libtool-ltdl openssl openssl-devel fontconfig-devel libxml2-devel curl-devel  libicu libicu-devel libmcrypt libmcrypt-devel libmhash libmhash-devel

    • 编译安装Cmake

    # tar zxvf cmake-2.8.12.2.tar.gz  (解压安装包)

    # cd cmake-2.8.12.2     (进入解压后安装包)

    # ./configure           (configure下)

    # make && make install     (make 下)

    结束后,用 cmake -version 命查看是否安装成功啦。

    2、安装Mysql

    试想一下,等mysql安装成功后,由哪个用户来启动Mysql呢?以root吗,万一Mysql被攻破了,root用户岂不是很不安全。从一本书中看到一句话:Mysql服务器在Unix下启动的两个要求是:1、以root以外的其它用户来启动。2、以固定的一个用户来启动mysql。所以,我们先要创建mysql用户跟用户组,且将安装目录的所属用户用户组也更改为mysql。

    • 创建所需要的文件目录

    # mkdir -pv /usr/local/mysql/data      (准备将Mysql安装在这个目录下)

    • 创建所需要用户与用户组

    # groupadd mysql            (创建用mysql用户组)

    # useradd -g mysql -s /sbin/nologin mysql     (创建mysql用户,且属于mysql用户组,shell为nologin)   

    # chown mysql.mysql /usr/local/mysql/data -R (将刚创建的安装目录的所属用户跟用户组更改为mysql)

    # mkdir -pv /etc/mysql          

    # chown mysql.mysql /etc/mysql -R  

    • 安装目录,用户,用户组创建完完毕后,开始mysql的正式安装。

    # tar zxvf mysql-5.6.16.tar.gz      (解压安装包)

    # cd mysql-5.6.16             (进入安装包)

    • 接下来进行Cmake编译

    # cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_unicode_ci -DWITH_READLINE=1 -DSYSCONFDIR=/etc/mysql -DMYSQL_UNIX_ADDR=/etc/mysql/mysqld.sock -DWITH_EMBEDDED_SERVER=0 -DENABLED_LOCAL_INFILE=1  -DMYSQL_USER=mysql -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_DEBUG=0     

    # make && make install         (安装)

    等待安装。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    • 安装完后,进行mysql的各种配置

    # cp support-files/my-default.cnf /etc/my.cnf       (将 mysql-5.6.16安装包里的my-default.cnf文件覆盖 /etc/my.cnf)

    # cp support-files/mysql.server /etc/init.d/mysqld    (将 mysql-5.6.16安装包里的mysql.server 复制到/etc/init.d/mysqld,mysql.server是启动脚本,用于以后启动Mysql)

    # chmod +x /etc/init.d/mysqld             (增加mysqld文件的可执行权限) 

    # chkconfig --add mysqld              

    # chkconfig mysqld on                (设置开机时自动启动)

    • 配置/etc/my.cnf文件

    在[mysqld]中添加:

    datadir = /usr/local/mysql/data

    log-error = /usr/local/mysql/data/error.log

    pid-file = /usr/local/mysql/data/mysql.pid

    user = mysql

    tmpdir = /tmp

    保存退出

    • #初始化数据库

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

    • #手动启动MySQL

    # /etc/init.d/mysqld start

    • 添加环境变量

    # vi /etc/profile           (打开profile文件)

    在里面添加:PATH=$PATH:/usr/local/mysql/bin  

    保存退出

    # source /etc/profile        (重读profile文件)

    • 进入mysql ,修改root密码

    # mysql -uroot         (这时的root还没有密码,直接回车就可进入)

    mysql> set password = password("**********");    (红色处为要设置的密码)

    打完收工!

  • 相关阅读:
    《需求分析与系统设计》第二篇阅读体会
    《需求分析与系统设计》第一篇阅读体会
    《编写有效用例》第二篇阅读体会
    项目目标文档
    字符流
    字节流
    递归
    File类
    JDBC接口和工具类
    异常
  • 原文地址:https://www.cnblogs.com/banluchujia/p/3729799.html
Copyright © 2011-2022 走看看