Lamp、MySQL架构介绍及MySQL的安装
一、Lamp架构介绍1、是一个简写,它包含了四个东西:
Linux操作系统;
Apache(httpd) 是一个web服务软件;
MySQL 数据存储软件;
PHP脚本语言,和shell类似,比shell复杂,通常用来做网站;
2、httpd 、PHP、MySQL三者是如何工作的,
Apache跟php是一个整体,php是以一个模块的形式跟apache结合在一起的,Apache不能直接跟mysql直接打交道,只能php这个模块拿数据;
二、MySQL/Mariadb介绍
MySQL是一个关系型数据库,由mysql ab公司开发,2008年被sun公司以10亿美元收购,2009年,sun公司被oracle公司以74亿美元收购,
MySQL官网https://www.mysql.com 从5.6开始变化比较大,5.7性能上有很大提升;
(银行用的系统是unix,收费的)
Mariadb为MySQL的一个分支,官网:https://mariadb.com 最新版10.2
Mariadb主要由SkySQL公司维护,SkySQL 公司由MySQL原作者带领大部分原班人马创立,
Mariadb5.5 版本对应MySQL5.5,10.0对应MySQL5.6
Community社区版本,Enterprise企业版,GA(Generally Available)通用版,在生产环境中用的;DMR(Development Milestone>三、MySQL的安装
1、MySQL常用的安装包:rpm 二进制免编译,源码
2、uname -a 查看本机系统的版本号,
3、下载5.6_64位二进制包到/usr/local/src
4、解压包 mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
tar -zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
5、移动解压包到/usr/local/mysql目录并更名:mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql
6、创建mysql用户: useradd mysql
7、创建data目录
8、 ./scripts/mysql_install_db--user=mysql --datadir=/data/mysql
在这个过程中会出现很多错误:要确认创建mysql用户,及目录:/data//data/mysql
出现在下面的错误:
(1)root@riven/usr/local/mysql# ./bin/mysqld -- defaults-file=/etc/my.cnf --initialize --user=mysql
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方法:# yum install -y libaio//安装后在初始化就OK了
( 2)
解决方法:yum install -y perl-Module-Install
运行安装mysql 报错
# ./scripts/mysql_install_db--defaults-file=conf/3306my.cnf
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
解决方法 :安装autoconf库,命令:yum-y install autoconf
9、用echo $? 检查上一步是否出错,
10、初始化完成,要拷贝配制文件和启动脚本:配制文件在:support-files下面,拷贝到/etc/并更名为my.cnf :cp support-files/my-default.cnf /etc/my.cnf // /etc/my.cnf 里面有个默认的my.cnf
可以直接在里面改。
basedir = /usr/local/mysql
datadir= /data/mysql
prot = 3306
server_id = 1
socket = /tmp/mysql.sock
11、拷贝 启动脚本: cp support-files/mysql.server/etc/init.d/mysqld
并修改:
basedir=/usr/local/mysql 指定目录
datadir=/data/mysql
修改后把/etc/init.d/mysqld改成755权限,
12、想要它开机启动,要把它放到系统服务列表里面去
chkconfig --add mysqld
然后查看查看服务列表: chkconfig --list我们可以看到mysqld服务在里面了,表示下次开机会自动启动,也可以直接用命令让它启动起来:
1、/etc/init.d/mysqld start也可以用service mysqld start 也可以用命令行去启动:/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &
说明:
--defaults-file=/etc/my.cnf指定配制文件路径
--user=mysql指定启动用户
--datadir=/data/mysql/指定 datadir路径
(修改了配制文件/etc/my.cnf ,一定要重新初始化。
./scripts/mysql_install_db--user=mysql --datadir=/data/mysql
初始化mysql_install_db 后再启动 mysqld成功)
启动服务出错:
service mysqld start
错误信息:
Starting MySQL.170623 10:57:50 mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).
解决:
是不是安装的用户没有权限 你可以手动的建这一个文件
mkdir -p /var/log/mariadb/
cd /var/log/mariadb/
touch mariadb.log
chmod -R 775 mariadb.log
chown -R mysql:mysql mariadb.log
13、看进程:ps aux |grep mysqld,看它监听的端口:netstat -lntp
14、如何关闭mysqld :killall mysqld (相对安全),不可以直接kill pid
不可以直接用kill -9强制杀死进程,这样很容易丢数据,损坏你的表。你运行完killall mysqld然后慢慢等就可以了
15、mysqld常用的引擎:innodb 及myisam
页:
[1]