骞没蕴 发表于 2018-10-3 12:33:34

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]
查看完整版本: Lamp、MySQL架构介绍及MySQL的安装