centos7安装mysql(手把手教你6步搞定)

centos7安装mysql(手把手教你6步搞定)-mikechen

MySQL下载

本示例以mysql-5.7.37为例

下载地址:
https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz

centos7安装mysql(手把手教你6步搞定)-mikechen

安装MySQL5.7

  • 解压
#切换到下载目录
cd /usr/local

#解压
tar -xvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz

#重命名
mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql-5.7.37

#切换目录
cd /mysql-5.7.37

#创建conf目录
mkdir conf

  
centos7安装mysql(手把手教你6步搞定)-mikechen
  • 编辑my.cnf文件
#进入conf目录
cd conf

#编辑my.cnf文件
vim my.cnf
[client]
port=3306
 
[mysql]
default-character-set=utf8
 
[mysqld]
# MySQL服务器将监听的TCP/IP端口
port=3306
 
# 安装目录的路径。 通常相对于此解析所有路径。
basedir=/usr/local/mysql-5.7.37
 
# 数据库根目录的路径
datadir=/usr/local/mysql-5.7.37/data
 
# 创建新模式或表且未定义任何字符集时将使用的默认字符集
character-set-server=utf8
 
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
 
# MySQL服务器允许的最大并发会话数。
# 这些连接中的一个将保留给具有超级权限的用户,以允许管理员登录,即使已达到连接限制。
max_connections=500
 
# soket文件,本地连接时使用
socket=/usr/local/mysql-5.7.37/mysql.sock
 
# 建议禁用符号链接以防止各种安全风险
symbolic-links=0
 
# 错误日志
log-error=/usr/local/mysql-5.7.37/logs/mysql_log.log
 
# pid文件
pid-file=/usr/local/mysql-5.7.37/mysqld.pid
 
# 表名不区分大小写
lower_case_table_names=1
 
# 设置sql_mode
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

创建用户

  • 建用户
#添加mysql用户名
adduser mysql
#给mysql账户设置密码
passwd mysql
  • 建工作组
groupadd mysql
  • 新建用户同时增加工作组
useradd -g mysql mysql

注::-g 所属组 -d 目录 -s 所用的SHELL

  • 授权
chown -R mysql.mysql /usr/local/mysql-5.7.37

初始化

#切换目录
cd /usr/local/mysql-5.7.37/bin
#初始化配置
./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql-5.7.37 --datadir=/usr/local/mysql-5.7.37/data

在初始化过程中缺少libaio

#yum install libaio 默认32位,安装不成功

#安装命令
yum install  libaio-devel.x86_64 -y

成功后输出

root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option

设置开机启动

编辑服务文件

vim /usr/lib/systemd/system/mysql.service

[Unit]
Description=MySQL Server 5.7
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=/usr/local/mysql-5.7.37/bin/mysqld --defaults-file=/usr/local/mysql-5.7.37/conf/my.cnf
LimitNOFILE = max_open_files

加入开机自启动

systemctl disable mysql.service

服务的启动/停止/刷新配置文件/查看状态

#启动mysql服务
systemctl start mysql.service  

#停止服务
systemctl stop mysql.service       
    
 #重新启动服务
systemctl restart mysql.service      
 
#查看所有已启动的服务
systemctl list-units --type=service    

#查看服务当前状态
systemctl status mysql.service         
 
 #设置开机自启动
systemctl enable mysql.service     
    
 # 停止开机自启动
systemctl disable mysql.service  
centos7安装mysql(手把手教你6步搞定)-mikechen

启动连接

1.启动

#启动mysql服务
systemctl start mysql.service  

2.连接mysql服务

cd /usr/local/mysql-5.7.37/bin
./mysql -uroot -h 127.0.0.1 -p

3.设置密码

update user set authentication_string=PASSWORD("diefoqefdro123456") where user='root';
#刷新
flush privileges;

4.设置允许远程登录

update user set host='%' where user='root';
#刷新
flush privileges;

陈睿mikechen

10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复面试即可获取《史上最全阿里Java面试题总结》,后台回复架构,即可获取《阿里架构师进阶专题全部合集

评论交流
    说说你的看法