MySQL的安装和配置(CentOs7环境)

I.MySQL的安装和配置

1.准备环境

CentOs7      mysql-5.7.28-linux-glibc2.12-x86_64.tar

2.配置环境

(1)在root权限下,先清理历史环境:

[root@localhost ~]# rpm -qa |grep mariadb

mariadb-libs-5.5.64-1.el7.x86_64
[root@localhost ~]# yum remove mariadb-libs

   等它进行清理,完成后会弹出【complete】显示:

(2)创建用户和组

[root@localhost ~]# useradd mysql -s /sbin/nologin
[root@localhost ~]# id mysql
uid=1001(mysql) gid=1001(mysql) groups=1001(mysql)

(3)创建相关目录

[root@localhost ~]# mkdir -p /app/database/     #创建软件目录
[root@localhost ~]# mkdir -p /data/3306/        #创建数据目录
[root@localhost ~]# mkdir -p /binlog/3306/      #创建日志目录

(4)设置权限

[root@localhost ~]# chown -R mysql.mysql /app/ /data/ /binlog/

3.上传文件

(1)用xftp进行传输文件;

  传输成功后,回到命令行,查看下路径目录:

[root@localhost database]# cd /app/database/
[root@localhost database]# ll
total 707688
-rw-r--r--. 1 root root 724672294 Mar 16 13:13 mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz

(2)进行解压:

[root@localhost database]# tar xf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz

(3)解压后,因为文件名很长,可以做一个软链接

【用法是:ln -s 源文件 目标文件。源:实际存放文件的位置

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的 目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。-s 是代号(symbolic)的意思。

注意:①ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;②ln的链接又软链接 和硬链接两种,软链接就是ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变】

[root@localhost database]# ln -s mysql-5.7.28-linux-glibc2.12-x86_64 mysql
[root@localhost database]# ll
total 707688
lrwxrwxrwx. 1 root root        35 Mar 16 13:23 mysql -> mysql-5.7.28-linux-glibc2.12-x86_64
drwxr-xr-x. 9 root root       129 Mar 16 13:21 mysql-5.7.28-linux-glibc2.12-x86_64
-rw-r--r--. 1 root root 724672294 Mar 16 13:13 mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz

4.设置环境变量

[root@localhost mysql]# vim /etc/profile
#添加一行
PATH=/app/database/mysql/bin:$PATH

生效配置:

[root@localhost mysql]# source /etc/profile
[root@localhost mysql]# 
[root@localhost mysql]# 
[root@localhost mysql]# mysql -V
mysql  Ver 14.14 Distrib 5.7.28, for linux-glibc2.12 (x86_64) using  EditLine wrapper

注意:

如果环境变量设置错了,可以按照如下方式进行修改:

①查看系统变量,果然是设置错了

echo $PATH

②先还原PATH,再修改 /etc/profile 文件

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

5.初始化系统库表:

[root@localhost /]# mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3306/

报错:如果显示缺少某个库的话,可以进行下载:

eg:如果出现这种报错,可以先删除数据,重新运行即可:

[root@localhost /]# rm -rf /data/3306/*
[root@localhost /]# mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3306/

MySQL5.7版本的初始化方式

(1)mysqld  --initialize:

  • 初始化完成后,会有临时密码(12位),但是必须在使用Mysql前重置密码
  • 密码管理使用严格模式,3种密码复杂度

(2)mysqld --initialize-insecure

  • 初始化完成后,空密码;可自行设置密码

6.配置文件管理

cat  > /etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/app/database/mysql
datadir=/data/3306
server_id =6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
EOF
[root@localhost /]# cat /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/database/mysql
datadir=/data/3306
server_id =6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock

7.准备启动

[root@localhost /]# cd /app/database/mysql/support-files/
[root@localhost support-files]# ll
total 24
-rw-r--r--. 1 mysql mysql   773 Sep 27 15:00 magic
-rwxr-xr-x. 1 mysql mysql  1061 Sep 27 16:42 mysqld_multi.server
-rwxr-xr-x. 1 mysql mysql   894 Sep 27 16:42 mysql-log-rotate
-rwxr-xr-x. 1 mysql mysql 10576 Sep 27 16:42 mysql.server

注:这里的mysql.server是启动脚本

②拷贝脚本

[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld

③在centos7下,启动:

[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld
[root@localhost support-files]# 
[root@localhost support-files]# 
[root@localhost support-files]# chkconfig --add mysqld
[root@localhost support-files]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.28 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

以上操作完成后,即顺利完成了启动。

发布了48 篇原创文章 · 获赞 49 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/WY_star1/article/details/104896906