安装说明
- mysql版本说明:mysql-5.7.36-linux-glibc2.12-x86_64
- 下载:wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
- mysql安装目录:
-
baseDir=/usr/local/mysql dataDir=/usr/local/mysql/data
- linux账号:mysql
安装
压缩包解压
cd /usr/local
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
解压:
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
目录重命名
mv mysql-5.7.36-linux-glibc2.12-x86_64 mysql
数据目录授权
cd /usr/local/mysql
mkdir data
chmod -R 777 /usr/local/mysql/data
新建用户、组,并且将用户加入到组
groupadd mysql
useradd -g mysql mysql
修改mysql默认的配置
vi /etc/my.conf
追加内容
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
完整内容
vi /etc/my.conf
[mysqld]
bind-address=0.0.0.0
port=3306
# mysql启动用的账号
user=mysql
# base目录
basedir=/usr/local/mysql
# 数据目录
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
mysql初始化
cd /usr/local/mysql/bin
#执行下面的命令初始化时,有一个临时密码,记得贴出来保存一下
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data/ --basedir=/usr/local/mysql/
添加软连接,并重启mysql服务
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
service mysql restart
登录mysql修改密码和访问权限
cd /usr/local/mysql/bin
./mysql -hlocalhost -uroot -p
修改密码:
set password=password('root1234');
flush privileges;
修改访问权限
use mysql;
update user set Host='%' where User='root';
flush privileges;
关闭防火墙
systemctl stop firewalld.service
或者将3306加入到防火墙白名单
firewall-cmd --zone=public --add-port=3306/tcp --permanent
systemctl restart firewalld.service