一、官网下载mysql8.0tar包
1、mysql数据库官网 https://dev.mysql.com/downloads/mysql/
二、解压缩包并初始化数据库,包上传到Linux服务器就不讲解了,做运维的都会吧。
1、解压缩包:tar -xf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
2、把解压缩好的包移动到/usr/local下面并更名为mysql
mv mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/mysql
3、创建mysql用户
useradd -s /sbin/nologin mysql -M
4、赋予/usr/local下面的mysql文件夹权限
chown -R mysql.mysql /usr/local/mysql
5、新建一个文件夹存储数据、并授权
mkdir -p /data/mysql/data
chown -R mysql.mysql /data/mysql/data
chmod -R 775 /data/mysql/data
6、编辑my.cnf文件,这里本是linux服务器上面没有这个文件vim编辑的时候回自动创建
vim /etc/my.cnf
添加如下内容:
[mysql]
# 设置mysql客户端默认字符集
#
default-character-set=utf8
#
[mysqld]
#
skip-name-resolve
#
# #设置3306端口
#
port = 3306
#
# # 设置mysql的安装目录
#
basedir=/usr/local/mysql
#
# # 设置mysql数据库的数据的存放目录
#
datadir=/data/mysql/data
# # 允许最大连接数
max_connections=200
#
# # 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# # 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#lower_case_table_names=1 #此处是区分大写的,但是mysql8只有在初始化时设置lower_case_table_names=1才有效
max_allowed_packet=16M
这里面其实有很多内容可以添加,这个更具自己的需要添加其他内容,这里就添加了几个简单的内容让。
7、初始化数据
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data --lower_case_table_names=1
圈红的位置是数据库root用户密码要记住,登录用
8、启动数据库
cd /usr/local/mysql/support-files
./mysql.server start
这里启动会报错
需要给my.cnf文件里面配置的数据库存储的文件夹授权
chown -R mysql.mysql /data/mysql/data
chmod -R 775 /data/mysql/data
再重新启动:./mysql.server start
看到这个就证明启动成功
三、登录数据库进行密码修改及授权
1、创建软连接(实现可直接命令行执行mysql)
ln -s /usr/local/mysql/bin/mysql /usr/bin
2、登录数据库
mysql -uroot -p
这里会提示要登录密码,输入步骤7截图里面标红的密码回车即可
3、这里使用数据库会提示要修改密码,先修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
flush privileges;
在执行 show databases; 就不会报错了
4、授权远程连接
创建远程登录用户:CREATE USER 'root'@'%' IDENTIFIED BY '123456';
授权远程用户权限: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
修改完后刷新一下:flush privileges;
5、用Navicat连接MySQL遇到的问题
修改一下登录密码方式即可:
use mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;