首页 > 代码库 > LAMP编译安装(二)——安装Mariadb-5.5.45

LAMP编译安装(二)——安装Mariadb-5.5.45

背景介绍

技术分享

从上一篇文章了解到,当服务器架构为下图中的类型时,PHP服务器会启动php-fpm服务侦听在一个特定的套接字上来等待httpd服务器的请求,如果请求中包含对后端Mysql服务器的访问,此时分为几种情况:

1.PHP服务器是独立服务器,或PHP服务器和httpd服务器在同一台主机,并以httpd服务器的一个模块方式存在,且都为编译安装,则编译时需要通过mysqlnd参数联系后端的Mysql服务器

2.PHP服务器为独立服务器,且不是编译安装,可能需要安装php-mysql客户端来连接Mysql数据库

3.PHP服务器和Mysql共用一台主机,编译安装时需要指定Mysql的路径

由此可以看出PHP服务器本身并不会对Mysql服务器发起访问,PHP只是工作在httpd和Mysql的中间环节,建议先配置httpd和Mysql服务器后,再配置PHP服务器(如果PHP服务器不是单独的主机而是和httpd或者Mysql共用一个主机时,必须遵守该顺序)下面就用二进制程序Mariadb-5.5.45来演示数据库的安装。

安装Mariadb-5.5.45

1.解压Mariadb-5.5.45

tar -xf mariadb-5.5.45-linux-i686.tar.gz -C /usr/local/

2.创建软连接

cd /usr/local

ln -sv mariadb-5.5.45-linux-i686/ mysql

3.创建mysql用户和组

grouppadd -r mysql

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

4.将/usr/local/mysql属主属组改为root:mysql

chown -R root:mysql /usr/local/mysql

5.创建存放数据库文件的目录/data/mydata,属主属组改为mysql

mkdir -p /data/mydata

chown -R mysql:mysql /data/mydata

6.输出二进制文件

vim /etc/profile.d/mysql.sh

添加内容:export PATH=/usr/local/mysql/bin:$PATH 保存退出

source /etc/profile.d/mysql.sh

7.头文件导出

ln -sv /usr/local/mysql/include/mysql/ /usr/include/mysql

8.库文件导出

echo "/usr/local/mysql/lib/" > /etc/ld.so.conf.d/mysql.conf

看到libmysql.so.18被加载到内存说明,库文件导出成功技术分享

9.man文档导出

vim /etc/man.config技术分享

获取、修改Mariadb配置文件

Mariadb在/usr/local/mysql/support-files目录下问我们提供了各种硬件规格的配置文件,此处以my-large.cnf为例,需要注意的是:/etc/my.cnf的文件在二进制程序解压后就已存在,而MariaDB的配置文件查找顺序为:/etc/my.cnf--> /etc/mysql/my.cnf --> ~/.my.cnf

cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf

vim /etc/my.cnf #指明数据存放的位置技术分享

提供启动脚本

同样是在/usr/local/mysql/support-files目录下Mariadb也为我们提供了启动脚本

cp mysql.server /etc/rc.d/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list | grep mysqld技术分享

初始化数据库

cd /usr/local/mysql

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

service mysql.d on

再查看/data/mydata目录,看到日志文件、pid文件后再使用netstat -ntl查看3306端口是否侦听,判断服务是否正常启动技术分享

此处需要注意的地方是:

1.如果是二进制程序初始化数据库进入scripts目录执行程序会出现问题技术分享

2.根据/etc/my.cnf配置文件中设置,socket文件位置是在/tmp目录下,如果是只对本机提供服务,服务需求的申请者要指明socket文件的位置技术分享

测试MariaDB,删除匿名用户

1.使用mysql命令看是否可以正常技术分享

2.use mysql; #使用mysql库

3.SELECT user,host,password from user; #查看当前都有哪些用户技术分享

4.删除匿名用户(mysql指令中不区分大小写,习惯上是将命令大写)技术分享

5.给root账户修改密码技术分享

也可以不加host限制一次性修改所有root的密码,至此操作完成技术分享




本文出自 “兔样兔森破” 博客,请务必保留此出处http://arkling.blog.51cto.com/2844506/1867878

LAMP编译安装(二)——安装Mariadb-5.5.45