2021.03.09 centos安装mysql 参考博文
参考博文:蛇皮皮蛋
官网下载地址:mysql5.7
# mysql 5.7 下载地址:
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar
方式1:下载mysql的压缩包
方式2:通过迅雷先下载到本地,在通过局域网登录centos,sftp方式上传过去
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar
解压到目录
tar -xvf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar
重命名并移动目录位置
mv mysql-5.7.30-1.el7.x86_64.rpm-bundle /usr/local/mysql
创建mysql用户组和用户并修改权限
groupadd mysql
useradd -r -g mysql mysql
创建数据目录并赋予权限
mkdir -p /data/mysql #创建目录
chown mysql:mysql -R /data/mysql #赋予权限
修改mysql配置文件my.cnf
vim /etc/my.cnf
修改内容参照如下:
[mysqld]
#绑定ip地址
bind-address=0.0.0.0
#端口号
port=3306
#用户
user=mysql
#mysql压缩包目录
basedir=/usr/local/mysql
#mysql数据文件保存目录
datadir=/data/mysql
socket=/tmp/mysql.sock
#错误日志目录
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
#服务端编码
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
进入mysql的bin目录,并初始化mysql
#到mysql目录下
cd /usr/local/mysql/bin/
#初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
查看mysql的密码
cat /data/mysql/mysql.err
配置mysql服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
-- 2020.08.09 更新
#添加服务(随系统自启)
chkconfig --add mysql
#显示服务列表
chkconfig --list
启动mysql
service mysql start
修改密码
./mysql -u root -p #bin目录下
执行以下命令
#重新设置密码
SET PASSWORD = PASSWORD('123456');
#允许本地登录密码永不过期
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
#刷新权限
FLUSH PRIVILEGES;
在开启mysql允许任意ip访问
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
任意目录下执行mysql命令
不用每次到/usr/local/mysql/目录下执行 ./mysql 命令
ln -s /usr/local/mysql/bin/mysql /usr/bin
添加防火墙规则,开启3306端口
#添加3306端口号
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#刷新防火墙规则
firewall-cmd --reload
#查询已放行端口列表
firewall-cmd --zone=public --list-ports
修改默认端口号3306
2021.03.12 更新
vim /etc/my.cnf
在[mysqld]下添加一行
port = xxxx (你的端口号)
重启mysql服务
service mysqld restart
验证端口号是否已启用
netstat -tpnl | grep mysqld