LNMP平台搭建---MySQL安装篇
在前两篇中,安装了一个基本的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安装篇的更多相关文章
- LNMP平台搭建---Nginx安装篇
在上一篇博文<LNMP平台搭建---Linux系统安装篇>中,我们安装了CentOS版本的Linux操作系统,现在,我们来安装一个Web服务器,大标题写着LNMP,其中的N就是Nginx, ...
- LNMP平台搭建---PHP安装篇
在前面三篇中,我们安装了Linux系统.Web服务器Nginx.MySQL数据库服务器,这篇就来将搭建动态网站的最后一步:PHP安装. Nginx服务器只能响应静态资源请求,对于动态资源请求就不行了, ...
- LNMP平台搭建---Linux系统安装篇
在互联网网站开发领域,有一个名词,大家一定不陌生,那就是LAMP,经典的Web服务器环境,由Linux+Apache+MySQL+PHP组成,,后来,一个名叫Nginx的Web服务器开源出来了,因其更 ...
- LNMP环境搭建——MySQL篇
The world's most popular open source database 1.Install MySQL root@kallen:~# apt-get install mysql-s ...
- MySQL集群---②Windows平台搭建MySQL CLUSTER集群
原文:http://blog.csdn.net/mazhaojuan/article/details/42211857 本文将通过两台电脑来简单介绍一下Windows平台如何搭建MySQL集群. My ...
- Linux 之 LNMP服务器搭建-MySQL
LNMP服务器搭建-MySQL 参考教程:[千峰教育] 系统版本: CentOS 6.8 关闭防火墙和Selinux service iptables stop setenforce 0 安装mysq ...
- centos 7.3 服务器环境搭建——MySQL 安装和配置
centos 7.3 服务器环境搭建——MySQL 安装和配置服务器信息如下:服务器:阿里云系统 centos 7.3 (阿里云该版本最新系统)mysql版本:5.7.18 (当前时间最新版本)连接服 ...
- 大数据平台搭建 - Mysql在linux上的安装
一.简介 MySQL是一个关系型数据库系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 ...
- LNMP平台搭建之一:nginx编译安装
参考博客:https://www.cnblogs.com/zhang-shijie/p/5294162.html jack.zhang 一.环境说明 系统环境:centos6.5 [root@lo ...
随机推荐
- Ubuntu 下,修改 Mac address
ifconfig // check Mac address sudo ifconfig eth0 down sudo ifconfig eth0 hw ether xx:xx:xx:xx: ...
- AOJ DSL_2_E Range Add Query (RAQ)
Range Add Query 数列 A = {a1,a2,...,an} に対し.次の2つの操作を行うプログラムを作成せよ. add(s,t,x): as,as+1,...,at にxを加算する. ...
- java 集合 Connection 栈 队列 及一些常用
集合家族图 ---|Collection: 单列集合 ---|List: 有存储顺序 , 可重复 ---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实 ...
- Js对map的操作
var map = {}; // 赋值 var key = "key1"; var value = "value1"; map[key] = value; // ...
- c# .Net :Excel NPOI导入导出操作教程之List集合的数据写到一个Excel文件并导出
将List集合的数据写到一个Excel文件并导出示例: using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using System;using Sys ...
- JS 面向对象随笔
1.一个对象的静态属性只能通过类名来访问 不能通过实例来访问 如下面定义个HelloWord的类 function HelloWord(){ console.log("这里是HelloWor ...
- centos6.5安装oracle11g_2
centos7安装oracle数据库不成功,换成centos6.5安装,可以安装成功,记录一下 安装系统时,主机名如果不是用localhost,安装成功后,要用主机名和ip做映射,修改/etc/hos ...
- centos7安装nexus私服2.14
今天项目经理叫搭个nexus私服,记录一下 nexus下载比较慢,可在本地下载,然后用sftp上传到linux系统去,下载地址https://www.sonatype.com/download-oss ...
- [NHibernate]一对多关系(关联查询)
目录 写在前面 文档与系列文章 一对多查询 总结 写在前面 上篇文章介绍了nhibernate的一对多关系如何配置,以及级联删除,级联添加数据的内容.这篇文章我们将学习nhibernate中的一对多关 ...
- 【06-18】CentOS使用笔记
使用中文输入法 搜狗输入法只支持Ubuntu sudo yum install "@Chinese Support" [系统]--->[首选项]--->[输入法]--& ...