在前两篇中,安装了一个基本的Web服务器,但是只能提供静态网页查看,要做成动态网站,就必须要数据库或其他编程语言支持了,这里先介绍MySQL数据库的安装。

  MySQL是一个开源的数据库,在互联网行业应用的很广泛,下面来记录一下从源码安装的步骤,当然,MySQL也有其他安装方式,比如,使用yum下载安装rpm包,或者二进制方式安装,如果机器比较多,可以自己搭建yum源,然后定制rpm包,这样更方便于使用ssh多机自动安装。

  源码安装的mysql版本为5.5.32,使用cmake编译安装,下面开始记录安装步骤吧:

  1. 安装准备:

    MySQL需要使用cmake工具编译和依赖于ncurses-devel库,先安装它们:

    1.1 cmake安装:

      a. 解压: tar xf cmake-***

      b. cd cmake-**

      c. ./configure,结果如下:

      

      最后提示我们允许gmake即可。

      d. gmake

      e. sudo gmake install

      f. 查看是否安装成功:

      

    1.2 ncurses-devel安装:

        sudo yum install -y ncurses-devel

  2. MYSQL安装:

    2.1 创建mysql用户和mysql用户组

        sudo groupadd mysql

        sudo  useradd mysql -s /sbin/nologin -M -g mysql

    2.2 解压mysql压缩包并进入mysql安装目录

        cmake . -DCMAKE_INSTALL_PREFIX=/home/linjk/usr/mysql/mysql-5.5.32 -DMYSQL_DATADIR=/home/linjk/usr/mysql/mysql-5.5.32/data -DMYSQL_UNIX_ADDR=/home/linjk/usr/mysql/mysql-5.5.32/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii -DENABLE_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLE_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1 -DWITH_DEBUG=0

      (更多的编译选择可以从mysql官网查看:http://dev.mysql.com/doc/internals/en/cmake-howto-detailed.html)

    2.3 执行"make && sudo make install"进行mysql数据库安装,安装步骤可能时间有点长。使用的虚拟机,内存为2G,我make的时间大概8分钟,install大概10秒.

    2.4 拷贝mysql的模板配置文件到/etc目录下:

    

    2.5 为了方便使用mysql命令,这里配置一下环境变量:

      echo 'export PATH=/home/linjk/usr/mysql/mysql-5.5.32/bin:$PATH' >> /etc/profile,如下示:

      

    2.6 初始化数据文件:

      2.6.1 改变目录授权:

        sudo chown -R mysql.mysql /home/linjk/usr/mysql/mysql-5.5.32/data/

        sudo chmod -R 1777 /tmp/

      2.6.2 初始化数据文件:

        cd /home/linjk/usr/mysql/mysql-5.5.32/scripts/

        sudo ./mysql_install_db --basedir=/home/linjk/usr/mysql/mysql-5.5.32/ --datadir=/home/linjk/usr/mysql/mysql-5.5.32/data/ --user=mysql

      2.6.3 拷贝启动脚本到/etc/init.d目录下:

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

        sudo chmod u+x /etc/init.d/mysqld

      2.6.4 启动数据库:

        执行:sudo /etc/init.d/mysqld start 即可

      2.6.5 使用命令“netstat -lntup | grep 3306”来确认一下是否启动成功。

      2.6.6 现在就可以使用命令"mysql"登录了

        

        如果出现无法登录,可以尝试kill掉mysqd进程,重新初始化一遍data文件。
    3. 安装完后可以继续的其他操作:

      3.1 删除空用户: delete from mysql.user where user=''; 提高安全性

      3.2 mysql.user表中,'::1'host名字是ipv6的,不需要也可以进行删除

      3.3 删除测试库: drop database test;

      3.4 初始化用户密码:

        /home/linjk/usr/mysql/mysql-5.5.32/bin/mysqladmin -u root password 'ljk121121'

      3.5 配置开机启动:sudo chkconfig mysqld on

      3.6 新增普通用户等个性化配置mysql即可

    

    下一篇,将介绍LNMP平台搭建的最后一步,增加WEB服务器的PHP支持。

LNMP平台搭建---MySQL安装篇的更多相关文章

  1. LNMP平台搭建---Nginx安装篇

    在上一篇博文<LNMP平台搭建---Linux系统安装篇>中,我们安装了CentOS版本的Linux操作系统,现在,我们来安装一个Web服务器,大标题写着LNMP,其中的N就是Nginx, ...

  2. LNMP平台搭建---PHP安装篇

    在前面三篇中,我们安装了Linux系统.Web服务器Nginx.MySQL数据库服务器,这篇就来将搭建动态网站的最后一步:PHP安装. Nginx服务器只能响应静态资源请求,对于动态资源请求就不行了, ...

  3. LNMP平台搭建---Linux系统安装篇

    在互联网网站开发领域,有一个名词,大家一定不陌生,那就是LAMP,经典的Web服务器环境,由Linux+Apache+MySQL+PHP组成,,后来,一个名叫Nginx的Web服务器开源出来了,因其更 ...

  4. LNMP环境搭建——MySQL篇

    The world's most popular open source database 1.Install MySQL root@kallen:~# apt-get install mysql-s ...

  5. MySQL集群---②Windows平台搭建MySQL CLUSTER集群

    原文:http://blog.csdn.net/mazhaojuan/article/details/42211857 本文将通过两台电脑来简单介绍一下Windows平台如何搭建MySQL集群. My ...

  6. Linux 之 LNMP服务器搭建-MySQL

    LNMP服务器搭建-MySQL 参考教程:[千峰教育] 系统版本: CentOS 6.8 关闭防火墙和Selinux service iptables stop setenforce 0 安装mysq ...

  7. centos 7.3 服务器环境搭建——MySQL 安装和配置

    centos 7.3 服务器环境搭建——MySQL 安装和配置服务器信息如下:服务器:阿里云系统 centos 7.3 (阿里云该版本最新系统)mysql版本:5.7.18 (当前时间最新版本)连接服 ...

  8. 大数据平台搭建 - Mysql在linux上的安装

    一.简介 MySQL是一个关系型数据库系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 ...

  9. LNMP平台搭建之一:nginx编译安装

    参考博客:https://www.cnblogs.com/zhang-shijie/p/5294162.html   jack.zhang 一.环境说明 系统环境:centos6.5 [root@lo ...

随机推荐

  1. 使用apache ftpserver搭建ftp服务器

    作为一个javaer,遇到任何问题,先查一下java中的解决方案.地球上的许多事情,在java中都能找到完美的解决方案.之前搭建ftp服务器使用的是vsftpd,现在可以把它卸掉了,它以服务的形式运行 ...

  2. php面向对象编程(三)

    <? class Person { // 下面是人的成员属性 var $name; // 人的名子 var $sex; // 人的性别 var $age; // 人的年龄 // 定义一个构造方法 ...

  3. VS 团队资源管理 强制解锁锁定文件

    故事是这样发生的: 以前有台电脑,在团队资源里看程序,可能冥冥中不小心按了个空格,so,文件被锁定 而我却没有发现 如果再给我一个机会,我只想说记得签入 然后,高潮来了 重装电脑 欣喜的装好新机子打开 ...

  4. 【UOJ#228】基础数据结构练习题 线段树

    #228. 基础数据结构练习题 题目链接:http://uoj.ac/problem/228 Solution 这题由于有区间+操作,所以和花神还是不一样的. 花神那道题,我们可以考虑每个数最多开根几 ...

  5. 使用腾讯开发平台获取QQ用户数据资料

    <今天是七夕:祝大家七夕嗨皮,前可么么哒,后可啪啪啪> Tips:本篇博客将教你如何使用腾讯开发平台获取QQ用户资料 ----------------------------------- ...

  6. UnixC学习小结

    1.malloc工作原理:     malloc使用一个数据结构(链表)维护分配空间     链表的构成:分配的空间/上一个空间数据/下一个空间/空间大小等信息.     对malloc分配的空间不要 ...

  7. Linux 远程复制文件

    Linux 远程复制文件 如果想把机器A上面的dir目录下面的所有文件复制到机器B的dir目录下,我们可以使用nc命令来完成 在机器A的dir目录下面执行: tar -czf - * | nc -l ...

  8. 搭建maven项目

    一.新建项目 点击"Maven Project",如果没有的话在"Other"里面 勾选这个选项,这样可以建立一个没有多余文件的简单项目(如果这个时候直接建立w ...

  9. Charles抓Android的数据包

    1. 获得Mac OS的IP地址 2. 对Android手机设置代理,主机IP是步骤1中获得的IP,端口8888

  10. Redis、Memcache和MongoDB的区别(转)

    1.性能 都比较高,性能对我们来说应该都不是瓶颈 总体来讲,TPS方面redis和memcache差不多,要大于mongodb 2.操作的便利性 memcache数据结构单一 redis丰富一些,数据 ...