LAMP之mysql安装

###MySQL/Mariadb介绍

  • MySQL是一个关系型数据库,由mysql ab公司开发,mysql在2008年被sun公司收购(10亿刀),2009年sun公司被oracle公司收购(74亿刀)
  • MySQL官网 最新版本5.7GA/8.0DMR
  • MySQL5.6变化比较大,5.7性能上有很大提升
  • Mariadb为MySQL的一个分支,官网最新版本10.2
  • MariaDB主要由SkySQL公司(现更名为MariaDB公司)维护,SkySQL公司由MySQL原作者带领大部分原班人马创立.
  • Mariadb5.5版本对应MySQL的5.5,10.0对应MySQL5.6
  • Community 社区版本,Enterprise 企业版,GA(Generally Available)指通用版本,在生产环境中用的, DMR(Development Milestone Release)开发里程碑发布版,RC(Release Candidate)发行候选版本,Beta开放测试版本,Alpha内部测试版本

###安装介绍 MySQL的几个常用安装包:rpm,源码,二进制免编译

二进制免编译包:软件先进行编译,再打包压缩。好处在于不用花时间编译配置。 二进制包区分平台,使用uname -a查看平台,X86为64位,i686为32位。

[root@jiangshan ~]# uname -a
Linux jiangshan 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

###安装 ####下载二进制包

[root@jiangshan src]# cd /usr/local/src
[root@jiangshan src]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz 
[root@jiangshan src]# ls
mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
解压
tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
## 移动并重命名
[root@jiangshan src]# mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
[root@jiangshan src]# cd /usr/local/mysql

####创建用户

[root@jiangshan mysql]# useradd mysql
[root@jiangshan mysql]# mkdir /data/

####初始化

[root@jiangshan mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
## --user指定用户 
##--datadir 数据存放目录(data目录必须存在)
## --defaults-file=/etc/my.cnf指定配置文件位置 不加默认为/etc/my.cnf

#####初始化错误

[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
## 解决
yum install -y perl-Data-Dumper.x86_64

#####检测 查看是否输出两个ok或者echo $?是否输出0

[root@localhost mysql]# echo $?
0

####拷贝配置文件

## my-default.cnf为配置文件模板
cp support-files/my-default.cnf  /etc/my.cnf 			#配置文件
cp support-files/mysql.server /etc/init.d/mysqld		#启动脚本
  • my-default.cnf为配置文件模板
  • 配置文件的默认位置为/etc/my.cnf,如果配置文件没有放在这。启动时需要指定配置文件位置,–defaults-file=filename

默认有my.conf文件可以修改

[root@jiangshan mysql]# rpm -qf /etc/my.cnf
mariadb-libs-5.5.52-1.el7.x86_64
[root@jiangshan mysql]# vim  /etc/my.conf
[mysqld]
datadir=/var/lib/mysql                                      ##改为 /data/mysql
socket=/var/mysq/lib/mysql.sock                           ##改为 /tmp/mysql.sock
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log                  加#注释
lpid-file=/var/run/mariadb/mariadb.pid                    加#注释

####修改配置文件

vi  /etc/init.d/mysqld
  • datadir:/usr/local/mysql 软件安装目录

  • basedir: /data/mysql 数据存放目录

服务启动

[root@jiangshan mysql]# /etc/init.d/mysqld  start


####关闭MySQL

service mysqld stop
[root@jiangshan mysql]# service mysqld stop
Shutting down MySQL.. SUCCESS! 
[root@jiangshanmysql]# ps aux   |grep  "mysql"
root      4608  0.0  0.0 112664   976 pts/0    R+   23:23   0:00 grep --color=auto mysql

killall mysqld

[root[@allen1](https://my.oschina.net/u/2359274) mysql]# killall mysqld
[root[@allen1](https://my.oschina.net/u/2359274) mysql]# ps aux   |grep  "mysql"
root      4608  0.0  0.0 112664   976 pts/0    R+   23:23   0:00 grep --color=auto mysql
kill与killall的区别
  • kill PID也是可以结束进程的,但是有些服务是由多个进程支持。例如,MySQL服务就有多个进程,MySQL在写数据时,如果一个进程被kill了,那么还在内存未写入的数据就会丢失。而使用killall 服务名,会等待内存的数据写入磁盘后在结束所有服务进程。

  • 如果使用killall mysql还是杀不死进程,这个时候不要使用-9强制杀死,因为数据量大,所以这个时候我们只能等待。等数据处理完之后,进程自动会被kill掉。

转载于:https://my.oschina.net/jiangshanlinux/blog/1499453

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值