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

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

专注于为中小企业提供网站建设、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业垣曲免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

操作系统版本: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:指定用户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


新闻标题:小C的MySQL学习笔记(一):MySQL的安装部署
网页地址:http://azwzsj.com/article/pgjpod.html