1、资源下载
mysql 国内镜像
下载 : mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
2、mysql 数据库安装
上传 mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz 到 centos8 文件夹下
MySQL 默认安装路径为/usr/local/mysql
这里可以指定安装路径
创建MySQL安装文件夹
解压 mysql 安装包
tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
这里 MySQL安装 路径为 /admin/database/mysql-5_7_31_64
在MySQL安装目录下 新建data 文件夹
mkdir data
创建mysql用户
useradd -r -s /sbin/nologin mysql
使用 id mysql 查看是否创建成功
使用命令更改文件权限用户,此处的-R起递归作用
chown -R mysql.mysql /admin/database/mysql-5.7.31_64
cd 到 bin 目录下,安装MySQL
./mysqld --user=mysql --basedir=/admin/database/mysql-5_7_31_64 --datadir=/admin/database/mysql-5_7_31_64/data/ --initialize
注意: basedir 和 datadir 为 MySQL 安装路径
[Note] A temporary password is generated for root@localhost: r>8:p9iyMcao 这是随机生成的密码,待会通过root 登录数据库的时候 需要 使用
复制suport-files目录下的mysql.server脚本到/etc/init.d目录一份,方便以后使用service命令管理软件
cp suport-files/mysql.server /etc/init.d/mysql
修改 /etc/init.d/mysql
basedir 指当前数据库的安装路径
#数据库存放目录
datadir = 指当前数据库的数据存放路径
可以在 etc路径下创建 my.cnf 配置文件 用于修改mysql 数据库的默认连接端口,
cd etc/
touch my.cnf
my.cnf 文件内容
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
#
[client]
#客户端设置
port = 3306
#socket = /data/mysql/data/mysql.sock
#default-character-set = utf8mb4
[mysqld]
user=mysql
port= 3306
basedir=/admin/database/mysql-5_7_31_64
datadir=/admin/database/mysql-5_7_31_64/data
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
lower_case_table_names=1
pid-file = /admin/database/mysql-5_7_31_64/data/mysql.pid
bind-address = 0.0.0.0
注意:需要 手动创建 pid-file 指定的 pid 文件
启动 MySQL 服务
service mysql start
出现如下报错:可能是 mysql.pid 文件未创建
The server quit without updating PID file (/admin/database/[FAILED]7_31_64/data/iZuf683lzo0a68rg7q55f4Z.pid).
登录数据库
cd 到 MySQL安装目录下的bin 目录下执行命令: ./mysql -uroot -p
使用随机生成的密码登录 ;
登陆进去后,如果不提示修改密码,自己进行修改密码
mysql> SET PASSWORD = '这里填写你的密码';
Query OK, 0 rows affected (0.02 sec) 出现该字样则修改成功。
授权访问,此处需要创建一个新用户,然后将权限授权给新用户,以后用新用户进行登录(可能会存在不同版本的授权不一样的问题)
mysql> CREATE USER '你的用户名字'@'限定的IP地址' IDENTIFIED BY '你的密码'; 限定的IP地址,可以用通配符 % 替换,代表任何IP都可以。
Query OK, 0 rows affected (0.02 sec)
mysql> GRANT ALL ON *.* TO '你的用户名字'@'%';
Query OK, 0 rows affected (0.00 sec)
show global variables like ‘port’;
查看MySQL访问端口号
netstat -nap | grep 3306
查看端口被那个进程占用
防火墙开放访问端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload # 配置立即生效
注意: 如果是阿里云服务器 需要 配置访问端口