Linux安装MySQL

目录

0.码仙励志

1.环境和下载

2.安装


0.码仙励志

再长的路,一步步也能走完,再短的路,不迈开双脚也无法到达。

1.环境和下载

Linux:centos7

MySQL:5.7

先下载,下载地址:MySQL :: Download MySQL Community Server

也可以用百度网盘下载

微信搜索公众号码海无际或扫描左侧二维码回复c017获取,

如果不会请给我留言或者加QQ194760901找我索要

2.安装

放到/home目录下

解压

tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz

再移动并重命名一下

mv mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql

查看一下

cd /usr/local/mysql

配置my.cnf

vi /etc/my.cnf

内容如下

[mysqld]
#配置区段
socket=/tmp/mysql.sock
#允许所有IP可访问mysql服务器
bind-address=0.0.0.0
#端口
port=3306
#MySQL启动用户
user=root
#指定安装MySQL的安装路径
basedir=/usr/local/mysql
#错误日志的文件路径,保存MySQL启动、运行或停止时的日志信息
log-error=/log/mysql/error/error.log
#是否开启常规日志,用于记录客户端连接和执行的SQL语句
general-log=1
#常规日志的文件路径
general-log_file=/log/mysql/general/general.log
#开启慢查询日志
slow_query_log=on
#设置超过2秒的查询为慢查询
long_query_time=2
#慢查询日志文件路径,用于记录超过long_query_time时间或没有使用索引的查询
slow-query-log-file=/log/mysql/slow/slow.log
#二进制日志的保存路径,主要用于复制环境和数据恢复。
log-bin=/log/mysql/bin/binfile
#二进制日志单个文件的大小限制。
max_binlog_size=500M
#自动清除超过指定天数的过期日志。
expire_logs_days=30
#指定MySQL的数据库文件路径,千万别和日志放到一起,防止rm -rf
datadir=/data/mysql
#开启二进制文件的时候,需要设置这个参数
server-id=1
#防止同一个数据库被启动多次
pid-file=/usr/local/mysql/mysql.pid
#服务器的默认字符集,默认为latin1
character_set_server=utf8mb4
#禁用符号链接以防止各种安全风险
symbolic-links=0
#服务器对TIMESTAMP列的默认值和NULL值的处理方式,默认为0。设为1时,TIMESTAMP列可以保存NULL值。
explicit_defaults_for_timestamp=1
#不区分大小写
lower_case_table_names=1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#设置最大连接数为100,默认100
max_connections=1000
#设置每用户最大连接数为500
max_user_connections=500
#表示200秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响
wait_timeout=200

创建需要用到的目录

mkdir -p /log/mysql/error
mkdir -p /log/mysql/general
mkdir -p /log/mysql/slow
mkdir -p /log/mysql/bin
mkdir -p /data/mysql

初始化数据库

进入mysql的bin目录

cd /usr/local/mysql/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=root --initialize

如果出现下面情况

需要执行下面命令,然后重新初始化数据库

yum install libaio-devel.x86_64

查看密码,这个密码是随机生成的,一会儿登录的时候需要

cat /log/mysql/error/error.log

将mysql.server放置到/etc/init.d/mysql中,不然启动不了服务

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

service mysql start

到这里说明mysql已经安装成功了!!

下面修改密码

首先登录mysql,前面的那个是随机生成的密码,/usr/local/mysql/bin目录下执行

./mysql -u root -p

修改密码为123456,然后重新登录。

SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

这时候你如果使用远程连接……你会发现你无法连接。

这里主要执行下面三个命令(先登录数据库)

访问mysql库

use mysql; 

使root能在任何host访问

update user set host = '%' where user = 'root'; 

刷新

FLUSH PRIVILEGES;

如果还不行查看防火墙是否关闭,没有关闭就关闭一下

查看防火墙状态

systemctl status firewalld.service

关闭防火墙

systemctl stop firewalld.service 

用navicat连接

参考文献

Linux安装MySQL5.7_吃四碗饭的嘤嘤怪的博客-优快云博客_linux安装mysql

mysql 5.7 unknown variable 'log_slow_queries=/var/log/mysql/mysql-slow.log'_SakuraLLj的专栏-优快云博客

关于long_query_time的设置,可不可以说是mysql的一个小小bug呢_Vision.Z的博客-优快云博客_long_query_time

[ERROR] You have enabled the binary log, but you haven't provided the mandatory server-id._rockstar541的专栏-优快云博客

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值