Linux下安装Mysql8.0教程(也适用与5版本的mysql安装博主亲试)

链接:https://pan.baidu.com/s/1epG9dx7METCbQuFbvGTIYA?pwd=jhhi
提取码:jhhi

一、将Xftp 7跟虚拟机链接步骤-----这个是当时安装oracle时做的教程

1.检查是否安装openssh-server(root用户下)这里输入密码是不会显示的(基本上不用管)

1

yum list installed | grep openssh-server

2
上图显示openssh-server即已经安装
若没有显示即手动安装

yum install openssh-server

2,找到/etc/ssh/目录下的sshd服务配置文件sshd_config,用vim编辑器打开,之后按i进入编辑状态

vim /etc/ssh/sshd_config

3.把文件中的监听号地址打开

3
上面框框里面的需要将#去掉

4.允许远程监控

4
上面框框里面的需要将#去掉

5.使用用户密码登录

5
上面框框里面的需要将#去掉

6.保存文件退出

先按Esc键在输入:wq!保存退出

7.开启sshd服务

service sshd start

8.为了免去每次开启 CentOS 时,都要手动开启 sshd 服务,可以将 sshd 服务添加至自启动列表中

systemctl enable sshd.service

9.查看是否开启了sshd 服务自启动

systemctl list-unit-files | grep sshd
6

二、准备所需安装包

将mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz安装包上传至服务器
通过Xftp7工具进行上传(/usr/local)

1.解压

将mysql安装到/usr/local/mysql下

tar -xvf  mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz

移动并重命名为mysql

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

新建data目录

mkdir /usr/local/mysql/data

2.创建用户(如果装虚拟机时有创建可以不建,需要进行授权)

# 创建目录 
mkdir data
# 创建组
groupadd mysql
# 创建用户信息
useradd -g mysql mysql 
# 授权用户 
chown -R mysql:mysql /usr/local/mysql

三、安装步骤

1.初始化信息
执行命令 cd /usr/local/mysql到解压bin目录下

cd /usr/local/mysql/bin

执行初始化命令

./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --initialize

这里需要注意在 mysql 8.0 以后,如果要设置不区分大小写,需要在初始化时指定
–lower-case-table-names=1,如果在初始化之后修改my.cnf配置文件会出现报错(不知道为什么加了之后启动服务启动不起来(已解决)—最底下含有解决方案)
执行命令初始化

./mysqld --user=mysql --lower-case-table-names=1 --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --initialize

成功之后,获得到数据库临时密码

2.编辑文件,添加服务

2.1、修改my.cnf配置文件
执行命令 vim /etc/my.cnf

[mysql] 
# 设置mysql客户端默认字符集 
default-character-set=utf8 
socket=/var/lib/mysql/mysql.sock 
[mysqld] 
skip-name-resolve 
#设置3306端口 
port = 3306   
socket=/var/lib/mysql/mysql.sock 
# 设置mysql的安装目录 
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录 
datadir=/usr/local/mysql/data
# 允许最大连接数 
max_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集 
character-set-server=utf8 
# 创建新表时将使用的默认存储引擎 
default-storage-engine=INNODB
max_allowed_packet=16M
[mysqld_safe]
# 错误日志
log-error=/var/log/mariadb/mariadb.log
# 主线程信息
pid-file=/var/run/mariadb/mariadb.pid

2.2、创建文件夹

mkdir /var/log/mariadb

2.3、创建日志文件

# 创建错误信息日志
touch /var/log/mariadb/mariadb.log
 
# 创建主线程信息日志
touch /var/log/mariadb/mariadb.pid

2.4、# 授权给mysql用户

chown -R mysql:mysql /var/log/mariadb/

2.5、将/usr/local/mysql授权给myslq用户(这里执行报错的话可以看下下面的解决方案)

chown -R mysql:mysql /var/lib/mysql/

解决方案:(需要先建一个mysql文件夹)chown -R mysql:mysql /var/lib/mysql/命令报错解决方案
生成的存放的位置(推荐)

 ln -s /var/lib/mysql/mysql.sock   /var/lib/mysql/mysql.sock

2.6、添加mysqld服务到系统

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

3、开启服务把msql的脚本文件拷到系统的启动目录下
3.1、# 把msql的脚本文件拷到系统的启动目录下

cp /usr/local/mysql/support-files/mysql.server c

3.2、#将mysql加到启动服务列表里

chkconfig --add mysql

3.3、# 开机自启

chkconfig mysql on

3.4、# 启动mysql

service mysql start

4、启动mysql服务
4.1、启动mysql服务 service mysql start
4.2、查看启动状态 service mysql status

4.3、# 添加path(路径)到profile文件(vi /etc/profile)----放的位置如下图

PATH=/usr/local/mysql/bin:$PATH
export PATH 

时配置文件立即生效:source /etc/profile
9

4.4、启动mysql成功后,用临时密码登录mysql ,临时密码在初始化时生成

mysql -uroot -p 如果没有在profile中添加需要在bin目录下执行 ./mysql -uroot -p'pwd'

4.5、修改root密码
4.5.1、#执行命令
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pwd'; —修改root用户密码
flush privileges;—刷新权限

4.6、修改远程连接
4.6.1、# 选择数据库

use mysql;

4.7#更新远程登录
update user set host='%' where user='root'; ----修改远程登录权限
flush privileges; —更新权限
exit; --退出
5、开放防火墙端口
firewall-cmd --add-port=3306/tcp --permanent -----开放3306的端口
firewall-cmd –reload ------重启防火墙

查看全部开发端口

firewall-cmd --zone=public --list-ports

启动mysql报错:ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid)

在这里1插入图片描述
根据mysql错误日志去网上找到答案(错误日志存放路径可以去my.cof里面去找)
在这里插入图片描述

MySQL8.0新增data dictionary的概念,数据初始化的时候在Linux下默认使用lower-case-table-names=0参数,数据库启动的时候读取my.cnf文件中的值。若二者值不一致则在MySQL的错误日志中记录报错信息。
解决方案:
在MySQL的my.cnf配置文件中[mysqld]项下添加以下内容。

lower_case_table_names = 1
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值