小C的MySQL学习笔记一:MySQL的安装部署

个人MySQL学习笔记第一章,记录MysqL在linux操作系统下的安装流程

操作系统版本:Centos 6.5

数据库版本:MysqL 5.6/5.7

一、MysqL安装包的下载

  1. 登陆网址:https://www.MysqL.com/downloads/

  2. 我们这次要安装的是MysqL的二进制包,点击页面中的“MysqL Community Server”进入下载页

    小C的MySQL学习笔记(一):MySQL的安装部署


  3. 页面下面显示的是当前可供下载的最新版本:

    小C的MySQL学习笔记(一):MySQL的安装部署


  4. 当前MysqL的最新版本是8.0,下图红框部分分别代表着MysqL5.7/5.6/5.5的最后一版本,不想下载这几个版本的最新版,点击第四个选项,可以找到MysqL的其他历史版本。

    小C的MySQL学习笔记(一):MySQL的安装部署


  5. 我们想下载MysqL的5.7.20版本,可以点击“Archived versions”打开历史版本的页面后,按下图操作流程进行操作

    小C的MySQL学习笔记(一):MySQL的安装部署

    小C的MySQL学习笔记(一):MySQL的安装部署


二、MysqL安装流程

1. 关闭防火墙和selinux

[root@MysqL ~]# service iptables stop

[root@MysqL ~]# chkconfig iptables off

[root@MysqL ~]# chkconfig --list|grep iptable

iptables    0:off    1:off    2:off      3:off      4:off      5:off          6:off

修改/etc/selinux/config,把selinux的值改为disabled(需重启操作系统)

[root@MysqL ~]# sestatus

SELinux status:                 disabled


2.修改IO调度模式

[root@MysqL ~]# echo "deadline" >> /sys/block/sda/queue/scheduler

[root@MysqL ~]# cat /sys/block/sda/queue/scheduler

noop anticipatory [deadline] cfq


3.修改系统限制

[root@MysqL ~]#  echo "MysqL soft nofile 65536" >> /etc/security/limits.conf

[root@MysqL ~]#   echo "MysqL hard nofile 65536" >> /etc/security/limits.conf


4. 创建MysqL用户用户

[root@MysqL ~]#  groupadd -g 500 MysqL

[root@MysqL ~]#  useradd -u 500 -g 500 -r -M -s /sbin/nologin MysqL

**useradd参数说明**

-g<群组>:指定用户所属的群组;

-M:不要自动建立用户的登入目录;

-n:取消建立以用户名称为名的群组;

-r:建立系统帐号;

-u<uid>:指定用户id。


5. 创建必要的目录

1)创建MysqL的家目录,并授予MysqL权限

a.将软件包传至/usr/local/目录下

[root@MysqL ~]# mv mysql-5.6.16-linux-glibc2.5-x86_64.tar.gz /usr/local/

b.解压软件包

[root@MysqL ~]# cd /usr/local/

[root@MysqL ~]# tar -xvf mysql-5.6.16-linux-glibc2.5-x86_64.tar.gz

c.使用软连接创建MysqL目录(主要目的是:方便升级

[root@MysqL ~]# ln -s mysql-5.6.16-linux-glibc2.5-x86_64/ MysqL/

d.修改目录权限

[root@MysqL ~]# chown -R MysqL:MysqL MysqL/

2)创建MysqL的数据目录,并授予MysqL权限

[root@MysqL ~]# mkdir -p /data/MysqL

[root@MysqL ~]# chown MysqL:MysqL -R /data/


6.在/etc/目录下配置my.cnf文件


7.使用以下命令编译生成系统库

[root@MysqL ~]# cd /usr/local/MysqL/bin

1)5.6版本:

[root@MysqL ~]# ./MysqL_install_db --basedir=/usr/local/MysqL/ --datadir=/data/MysqL/ --defaults-file=/etc/my.cnf --user=MysqL

2)5.7版本:

[root@MysqL ~]# ./MysqLd --defaults-file=/etc/my.cnf --basedir=/usr/local/MysqL --datadir=/data/MysqL/ --user=MysqL --initialize

**注意:defaults-file参数需要放在第一个位置,否则会创建失败,error日志里面会出现如下错误

unkNown variable 'defaults-file=/etc/my.cnf'

参考官方文档: https://dev.MysqL.com/doc/MysqL-linuxunix-excerpt/5.7/en/data-directory-initialization-MysqLd.html


8.启动MysqL数据库

[root@MysqL ~]# cd /usr/local/MysqL/bin

[root@MysqL ~]# ./MysqLd_safe --defaults-file=/etc/my.cnf &


三、MysqL关闭

数据库关闭有两种常见方法

1.使用MysqLadmin进行关闭

[root@MysqL ~]#  cd /usr/local/MysqL/bin

[root@MysqL ~]#  ./MysqLadmin -uroot -p shutdown

2.紧急情况下或者由于一些原因忘记/没有数据库的root密码,无法用MysqLadmin进行关闭,可以使用下面的方法

1)查出当前MysqL的进程号

[root@MysqL ~]# ps -ef |grep MysqL

2)使用linux操作系统的kill命令kill掉进行

[root@MysqL ~]# kill -9 进程号

3)检查是否还有进程残留

[root@MysqL ~]# ps -ef |grep MysqL

相关文章

优化MySQL数据库发布系统存储的方法有:1.mysql库主从读写分...
使用mysql的方法:在“我的电脑”→右键→“管理”→“服务”...
在mysql中查看root用户权限的方法:1.命令行启动mysql服务;...
MySQL主从复制是用来备份一个与主数据库一样环境的从数据库,...
运行mysql的方法1.启动mysql服务,在“我的电脑”→右键→“...
开启mysql的方法1.可以通过快捷键win+r,输入cmd,打开窗口,...