码迷,mamicode.com
首页 > 数据库 > 详细

LAMP(1)介绍、Mysql_MariaDB、Mysql安装、Mysql_MariaDB安装

时间:2018-03-13 22:51:14      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:mysqlMysql_MariaDB

                            LAMP架构介绍

LAMP :(Linux+Apache(httpd)+MySQL+PHP)

Apache(httpd)+MySQL+PHP何以在同一台机器,也可以分开(Apache(httpd)+PHP要安装在一起

 技术分享图片

Apache 要和MySQL打交道需要借助PHP 模块(MySQL不存图片、文件等

Apache 直接和静态文件可以交互



                            Mysql_MariaDB

技术分享图片


             MySQL安装

技术分享图片          

rpm :默认安装在/usr/下,不能定义安装路径

二进制免编译包 :可以指定安装路径(以下实验都是用这种包),这个软件包是区分平台的,x86-64:64位,i686、i586:32位。如何查看自己操作系统是多少位的? uname -i

技术分享图片

(实验中把软件包都放在:/usr/local/src/)

(安装包地址(1)官网 (2)http://r.aminglinux.com  )

安装步骤:

1.下载二进制免编译包:

技术分享图片


2.解压:tar zxvf

技术分享图片


3.移动目录到目标路径目录下

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


4.cd /usr/local/mysql/

  ls

技术分享图片

5.创建mysql用户,因为启动mysql需要该用户

useradd mysql


6.创建/data目录:(存放数据库文件)

mkdir /data/

技术分享图片

7.初始化:

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

技术分享图片

命令执行后报错,缺少一个包,要安装再执行上述命令

技术分享图片

yum 模糊搜索要安装的包:

mysql]# yum list |grep perl |grep -i dumper

技术分享图片

(如果不知道是哪个包每个安装一遍再执行需要执行的命令)

yum install -y perl-Data-Dumper

再执行:

初始化命令

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


说明这个命令执行的结果是正确的判断标准是?\

(1)看文中是否有两个ok

(2)echo $?   输出0:正确(在需要验证的命令执行后立马输入echo $?,这个命令是检验上一条命令是否正确)



7.复制配置文件 到/etc/下并改名

cp support-files/my-default.cnf /etc/my.cnf

(我们的mysql配置文件就是以.cnf结尾,且固定放在/etc/下,如果放在其他地方下,启动是需要做指定,不然会默认找/etc/my.cnf)

系统自带一个/etc/my.cnf文件

技术分享图片

执行:cp support-files/my-default.cnf /etc/my.cnf

编辑/etc/my.cnf,修改内容

技术分享图片

(其实也可以用自带的那个/etc/my.cnf配置文件,同样修改这两处地方就行


8.复制启动脚本:复制到/etc/init.d/mysqld 名为mysqld

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

编辑:vim /etc/init.d/mysqld

技术分享图片

设置系统开机时,服务启动

chkconfig --add mysqld (添加到系统服务列表)

技术分享图片

 ( chkconfig mysql on (使其开机就启动))

(用命令启动起来:/etc/init.d/mysqld start 或者service mysqld start)

service mysqld start

技术分享图片

技术分享图片

service mysqld stop 停止服务

(假如我们没有把服务的启动脚本/配置文件放到/etc/init.d/下(或者无服务的启动脚本/配置文件),那么我们怎么去启动一个服务呢?

命令行方式:

 /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &   (&:命令最后加上表示为把命令执行放在后台)

技术分享图片

技术分享图片

(这里的!ps : ps aux |grep mysql)


这种启动只能用 killall mysqld 杀死进程而不能停止

kill cid  或killall 服务名 都可以杀死进程,但是killall+服务名相对安全,不容易丢失数据,它会让服务的读写完成后才真正结束一个服务,而kill cid立马杀死服务进程




                             MariaDB安装

先进入到/usr/local/src

cd /usr/local/src

1.下载二进制免编译包:

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

(官网地址:https://downloads.mariadb.com/  )

2.解压:

 tar zxvf  

技术分享图片

3.移动解压后的目录到目标路径目录下 /usr/local/ (并改名为mariadb,方便和mysql区分)

mv mariadb-10.2.6-linux-glibc_214-x86_64   /usr/local/mariadb 

4.进入到mariadb目录下

cd /usr/local/mariadb 

 也是需要创建

(1)创建用户:mysql

(2)/data/目录(/data/mariadb)

(这都在执行mysql时创建过了,这里省略,直接使用)


5.初始化:(datadir: data/mariadb(指定datadir时,mariadb会自动创建),用户也是mysql)

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

(尝试不加--basedir=/usr/local/mariadb/,会不会出错,教程是不加的)

检测上一条命是否是执行正常:echo $?


6.复制配置文件和复制启动脚本:

技术分享图片

可以看到support-files/ 有多个 .cnf文件(small、medium、large),这些文件不同在于它们缓存大小不一样,可以根据自己机器的大小和实际情况复制相应的配置文件,我实验是用my-small.cnf

(1)复制配置文件

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

(正常来说我们的数据库的配置文件应该复制到/etc/my.cnf下的,但是因为在之前的mysql的配置文件已经是放在这里了,所以为了区分放到/usr/local/mariadb/my.cnf下

)


(2)复制启动脚本: cp support-files/mysql.server /etc/init.d/mariadb

7.修改配置文件和启动脚本:

(1)配置文件(基本不用改)加内容:datadir=/data/mariadb

技术分享图片

   放在mysqld下,添加datadir=/data/mariadb

(2)编辑修改启动脚本

vim /etc/init.d/mariadb

技术分享图片

修改成这样,其中添加的conf是指定我们配置文件的路径(conf=/usr/local/mariadb.my.cnf)

定义了conf,还需要在往下修改,在启动命令

技术分享图片


8.启动mariadb(启动前先确定之前的进程mysql是否停止(),否者会出现冲突,因为两者都是监听3306端口)

/etc/init.d/mariadb start (或者:service mariadb start)


检查:ps aux |grep mariadb 、 netstat -ltnp

技术分享图片

如果我们的机器是没有安装到mysql的,仅仅安装mariaDB,则配置文件也直接复制到/etc/my.cnf下就行,同时也不需要在启动脚本下定义conf



如果在修改配置文件时,没有修改过文件:

   执行完以上操作,我们会发现在进程中 --datadir是--datadir=/data/mysql调用了mysql的文件,而不是我们定义的--datadir=/data/mariadb

这是因为我们的配置文件中没用定义这个参数,所以在配置文件中定义一下。

vim  /usr/local/mariadb/my.cnf

技术分享图片

放在mysqld下,添加datadir=/data/mariadb

保存退出后:再重新启动服务

killall mysqld

/etc/init.d/mariadb start















































LAMP(1)介绍、Mysql_MariaDB、Mysql安装、Mysql_MariaDB安装

标签:mysqlMysql_MariaDB

原文地址:http://blog.51cto.com/13589255/2086246

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!