CentOS 6.8 安装mysql5.7

xiaoxiao2021-02-28  29

至元数据起始

 

安装环境:CentOS 6.8

目的:通过通用二进制(Generic Binary)的方式安装MySQL5.7.17

所需软件:mysql-5.7.17-linux-glibc2.5-x86_64.tar(请自行从MySQL官网下载)

wget  http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.17-Linux-glibc2.5-x86_64.tar.gz

步骤:

1.创建mysql用户,mysql组

groupadd -g 3306 mysql

useradd -g mysql -u 3306 -s /sbin/nologin -M mysql

id mysql #查看是否创建成功

2.通过逻辑卷的方式创建MySQL数据目录。

[root@localhost]fdisk /dev/sda

n                #新建一个分区

p               主分区

1              #在我的系统上新建的是分区为第九个,所以按9

t                #修改分区的类型

8e                #修改为LVM类型

w                #保存退出

pvcreate /dev/sda1

vgcreate myvg /dev/sda1

lvcreate -L 500G -n mydata myvg #创建逻辑卷

mkfs.ext4 /dev/myvg/mydata  #将逻辑卷格式化为ext4文件系统

mkdir /mydata #创建挂载目录

修改/etc/fstab 设置开机自动挂载/dev/myvg/mydata

vim /etc/fstab

添加最后一行 /dev/myvg/mydata /mydata  ext4  defaults 0  0

mount -a #挂载逻辑卷

df  #检查逻辑卷是否被挂在了

chown -R mysql.mysql /mydata/data/

chmod -R 750 /mydata/data #这两步非常关键,直接关系到初始化数据库的时候是否有权限在/mydata/data/目录下读写数据

3.将mysql的通用二进制包解压到/usr/local目录下

cd /usr/local

tar xf mysql-5.7.17-linux-glibc2.5-x86_64.tar

#解压后产生了两个压缩包,其中那个mysql-test-5.7.17-linux-glibc2.5-x86_64.tar.gz包没有用删掉

tar xf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

ln -sv mysql-5.7.17-linux-glibc2.5-x86_64 mysql #创建一个软链接

cd mysql # 发现有这几个目录bin  COPYING  lib  README  share  support-files

修改权限 chown -R  mysql.mysql . #这一步很重要,一定不要忘了修改权限

其中最重要的目录为support-files 以及bin目录

support-files里面放的是mysql的样例配置文件以及服务启动脚本

bin里面存放的是mysql的重要命令(用于初始化数据库,备份,复制等)

下面初始化数据库 5.7版本之前用的是/bin/mysql_install_db命令,5.7版本后该命令被废弃,改用/bin/mysqld来初始化数据库

bin/mysqld --initialize-insecure --user=mysql --datadir=/mydata/data #初始化数据库并且指定数据目录 --initialize-insecure 用来初始化数据库,并且没有生成密码,如果使用--initialize会为数据库生成一个随机初始密码,在生产环境下请务必为mysql生成一个密码

cp support-files/mysql.server /etc/init.d/mysqld #提供服务脚本

4.提供mysql的配置文件

这是我的配置文件,里面仅仅做了最简单的配置,后续可以根据具体的需要配置相应的参数

less /etc/my.cnf

[client]

port=3306

socket=/tmp/mysql.sock

[mysqld]

datadir = /mydata/data/

port=3306

socket=/tmp/mysql.sock

key_buffer_size=16M

max_allowed_packet=8M

5.下面来启动数据库

service mysqld start #出现OK说明启动成功

netstat -tulnp #3306端口确实处于监听状态。

mysql -uroot -p #因为没有密码,所以直接回车就可以连接mysql 出现如下界面,说明成功了

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.7.17 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, 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.

mysql> show databases;

+--------------------+

| Database          |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| sys                |

+--------------------+

4 rows in set (0.00 sec)

mysql> create database mydb

    -> ;

Query OK, 1 row affected (0.00 sec)

mysql> use mydb;

Database changed

mysql> create table mytb(id int auto_increment primary key);

Query OK, 0 rows affected (0.02 sec)

 

 

注意事项

以上为mysql 默认的配置 如想修改my.cnf 初始化如下

 bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=mysql 

简单的配置文件 下篇

环境变量

MYSQL_HOME=/usr/local/mysql PATH=$MYSQL_HOME/bin:$PATH export PATH MYSQL_HOME 

转载请注明原文地址: https://www.6miu.com/read-2350302.html

最新回复(0)