LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

1、MySQL/Mariadb概述

MySQL是由my sql公司于1995年开发的关系型数据库管理软件,mysql开发后屡次通过版本更替,最新的是5.7GA/8.0DMR,my sql公司自身也经历了两次收购,首先是被sun公司收购,而后被Oracle收购,因此目前MySQL属于Oracle旗下的商用软件。mysql

2009年,MySQL的一位原做者与部分MySQL的开发者开发了Mariadb。其中Mariadb5.5对应了MySQL5.5,10.0对应了5.6。linux

2、MySQL安装

安装MySQL、Mariadb、Mangodb、Nagios、等等业务软件的方式通常有三种,yum(rpm包)、源码安装(就是安装中要make、make install)、二进制免安装包(至关于windows下的绿色软件包)。这里咱们将学习安装MySQL的二进制免编译包,实际工做中推荐这种方式。ios

一、下载MySQL的二进制包

LANG=en_US.UTF-8 #把语言暂时切换为英语,方便安装时排错
cd /usr/local/src
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz #下载完成后最好用7zip等工具测试一下包完整性。sql

这里咱们复习一下路径知识
/usr:系统级的目录,能够理解为C:/Windows/,/usr/lib理解为C:/Windows/System32。
/usr/local:用户级的程序目录,能够理解为C:/Progrem Files/。用户本身编译的软件默认会安装到这个目录下。
/opt:用户级的程序目录,能够理解为D:/Software,opt有可选的意思,这里能够用于放置第三方大型软件(游戏),当你不须要时,直接rm -rf掉便可。
源码放哪里?
/usr/src:系统级的源码目录。
/usr/local/src:用户级的源码目录。数据库

二、解压压缩包

tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gzvim

三、把解压好的程序目录夹放到 /usr/local/路径下,并更名叫mysql/

mv -v mysql-5.6.36-linux-glibc2.5-x86_64/ /usr/local/mysql windows

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

注意,这步处理完后cd到这个目录下看看是否是有相关的子文件夹,有时候可能mysql文件夹已经存在了,你再mv,就把刚才解压出来的东东给所有移到文件下了,等下实验时就会出错。
LAMP+LNMP(二) MySQL/Mariadb概述与安装实践ide

四、建立mysql用户与/data/目录

useradd mysql
mkdir /data/工具

五、设定MySQL的用户和路径

cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/学习

执行这一步的时候会出错,这里补充错误处理方法
a、用yum命令查看一下有没有哪一个rpm包提供上述程序

yum list | grep perl |grep -i dumper

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践
b、上bing、google搜前人的解决方法。

c、这里咱们须要安装第一个包“perl-Data-Dumper.x86_64”

yum install -y perl-Data-Dumper.x86_64

而后咱们再执行设定命令

仍是出错

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践
这里是缺乏libaio库文件

a、再来看看

yum list |grep libaio

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

b、把要的包装上

yum install -y libaio*

而后咱们再执行设定命令

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

开始跳一大堆字符。要安装半分钟。
记不记得前面安装httpd时的echo $?

echo $?

立刻执行echo $?命令,必须在执行上一条设定命令后立刻执行,返回值是0就ok了。
LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

六、拷贝配置文件和启动脚本并进行设置

cp -v support-files/my-default.cnf /etc/my.cnf
vim /etc/my.cnf ##修改my.cnf中的basedir和datadir

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

cp -v support-files/mysql.server /etc/init.d/mysqld
vim /etc/init.d/mysqld #定义basedir和datadir
chmod 755 /etc/init.d/mysqld

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

七、启动和关闭MySQL

/etc/init.d/mysqld start #经过启动脚本启动mysql
chkconfig --add mysqld
/bin/sh /usr/local/mysql//bin/mysqld_safe --defaults-file=/etc/my.cnf --datadir=/data/mysql/ & #经过程序方式启动mysql,用于没法经过init.d脚本启动mysql时。
ps qux |grep mysqld
netstat -lntp

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

关闭mysql

/etc/init.d/mysqld stop
killall mysql #须要先yum安装psmisc

补充知识:实际工做中若是数据库已经启动了那么最好用killall命令关闭数据库,关闭时必定要等到系统恢复响应时再进行其余操做,否则颇有可能丢数据甚至把库损坏,后果很严重。
补充一个数据库引擎知识。
MySQL存储引擎--MyISAM与InnoDB区别

3、Mariadb安装

一、下载Mariadb的源码包

cd /usr/local/src #依旧在该目录下操做,建议之后下载的程序二进制编译包都放在这里
wget https://downloads.mariadb.com/MariaDB/mariadb-10.2.6/bintar-linux-glibc_214-x86_64/mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz #国内大学的mariadb镜像,比直接到官网下快。

二、解压缩源码包

tar zxvf mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz

三、移动压缩包到/usr/local/下并更名为mariadb

mv mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz/ /usr/local/mariadb
cd /usr/local/mariadb

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

四、在系统中建立mysql用户与/data/目录

useradd mysql
mkdir /data/

五、执行设定命令安装程序

./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mariadb --datadir=/data/mariadb
echo $?

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

ls /data/mariadb

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

六、编辑配置文件

cp support-files/my-small.cnf /usr/local/mariadb/my.cnf
vi /usr/local/mariadb/my.cnf

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

七、编辑启动文件

cp support-files/mysql.server /etc/init.d/mariadb
vi /etc/init.d/mariadb

basedir=/usr/local/mariadb
datadir=/data/mariadb
conf=/usr/local/mariadb/my.cnf

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

*case "$mode" in
'start')
Start daemon
...

$bindir/mysqldsafe --defaults-file="$conf" --datadir="$datadir" --pid-file="$mysqldpidfilepath" "$@" & waitforready; returnvalue=$?*

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

八、启动mariadb

/etc/init.d/mariadb start
ps aux |grep mariadb

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

九、关闭mariadb

/etc/init.d/mariadb stop
killall mariadb

LAMP+LNMP(二) MySQL/Mariadb概述与安装实践

相关文章
相关标签/搜索