一、安装依赖包
[root@db01 ~]# yum install -y lrzsz [文件上传/下载]
[root@db01 ~]# yum -y install xfsprogs [安装磁盘格式化命令mkfs.xfs]
二、创建相关目录
[root@db01 ~]# mkdir -p /server/tools
[root@db01 ~]# mkdir /application [应用程序存放目录]
[root@db01 ~]# mkdir /data [数据文件存放目录]
三、创建一块新的磁盘做数据盘
#1、VMware虚拟机上添加新磁盘
#2、查看是否创建成功:
[root@db01 ~]# fdisk -l
#3、格式化磁盘
[root@db01 ~]# mkfs.xfs /dev/sdb
#4、查看磁盘UUID
[root@db01 ~]# blkid
/dev/sda3: UUID="f4e85127-b92c-44f4-8317-aefeefe7d58f" TYPE="ext4"
/dev/sda1: UUID="af935046-a36b-4138-89a0-3f42ee2b605c" TYPE="ext4"
/dev/sda2: UUID="4675ed90-d3b2-4b58-a40c-39e9736fb90b" TYPE="swap"
/dev/sdb: UUID="6b80189b-b782-427d-b7f5-3d3f815bead3" TYPE="xfs"
#5、修改自启动磁盘配置文件[永久挂载磁盘]
[root@db01 ~]# vim /etc/fstab
末尾添加一行:UUID=6b80189b-b782-427d-b7f5-3d3f815bead3 /data xfs defaults 0 0
#6、临时挂载磁盘
[root@db01 ~]# mount -a
#7、查看挂载情况
[root@db01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 47G 4.6G 41G 11% /
tmpfs 931M 0 931M 0% /dev/shm
/dev/sda1 190M 40M 141M 22% /boot
/dev/sdb 10G 33M 10G 1% /data
四、创建mysql用户和组
说明:mysql用户和组不需要登录和进行操作,而是ySQL自己管理的虚拟用户
[root@db01 ~]# useradd -s /sbin/nologin -M mysql
[root@db01 ~]# id mysql
uid=500(mysql) gid=500(mysql) groups=500(mysql)
五、删除系统自带的数据库软件
[root@db01 ~]# rpm -qa | grep mariadb
[root@db01 ~]# rpm -qa | grep mysql
[root@db01 ~]# yum remove mariadb~ [删除mariadb相关软件包]
[root@db01 ~]# yum remove mysql~ [删除mysql相关软件包]
六、上传压缩包、解压、拷贝文件
[root@db01 ~]# cd /server/tools
[root@db01 tools]# tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
[root@db01 tools]# mv /server/tools/mysql-5.7.26-linux-glibc2.12-x86_64 /application/mysql
七、设置环境变量
[root@db01 ~]# vim /etc/profile
最后一盘添加:export PATH=/application/mysql/bin:$PATH
[root@db01 ~]# source /etc/profile
[root@db01 ~]# mysql -V
mysql Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using EditLine wrapper
八、修改权限目录权限
[root@db01 ~]# chown -R mysql.mysql /application/*
[root@db01 ~]# chown -R mysql.mysql /data
九、初始化数据[创建系统数据]
[root@db01 ~]# mkdir /data/mysql/data -p
[root@db01 ~]# chown -R mysql.mysql /data
[root@db01 ~]# yum install -y libaio-devel
参数说明:
--initialize 参数:
1.给root@localhost用户设置临时密码;对于密码复杂度进行定制:默认创建4种12位密码
2.密码过期时间:180 (mysql5.7版本默认永不过期)
--initialize-insecure 参数:无限制、无临时密码
[root@db01 ~]# /application/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
补充说明:
mysql5.6初始化数据方式:[root@db01 ~]# /application/mysql/scripts/mysql_install_db
十、书写默认配置文件
说明:让mysql启动时以自己想要的方式启动 [root@db01 ~]# cat >/etc/my.cnf <<EOF [mysqld] user=mysql basedir=/application/mysql datadir=/data/mysql/data socket=/tmp/mysql.sock server_id=6 port=3306 [mysql] socket=/tmp/mysql.sock EOF
十一、启动数据库(sys-v 和systemd模式)
#1、sys-v 启动方式
[root@db01 ~]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@db01 ~]# service mysqld start
#2、systemd启动方式 注意:sys-v方式启动过的话,需要提前关闭,才能以下方式登录 [root@db01 ~]# cat >/etc/systemd/system/mysql.server <<EOF [Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql Execstart=/application/mysql/bin/mysqld --defaults=/etc/my.cnf LimitNOFILE = 5000 EOF
十二、管理员密码设定(root@localhost)
[root@db01 ~]# mysqladmin -uroot -p password test123 [设置mysql数据库密码]
Enter password:
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@db01 ~]# mysql [设定好了密码后,十一mysql命令登录就会报错]
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
[root@db01 ~]# mysql -uroot -p [正确登录方式:mysql数据库带密码登录]
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 11
Server version: 5.7.26 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.
mysql>
补充说明:安装启动报错解决
如何分析处理mysql数据库无法启动
#1、without updating PID 类似错误
查看日志:
在哪?
/data/mysql/data/主机名.err
[ERROR]上下文
#2、报错可能情况:
/etc/my.cnf 路径不对等
/tmp/mysql.sock文件修改过 或删除过
数据目录权限不是mysql
参数修改错了