约 811 字大约 3 分钟
官网下载
首先官网下载安装包:https://downloads.mysql.com/archives/community/
第一步:下载
第二步:上传到服务器
下载完成后,使用ssh工具以sftp/ftp方式上传到服务器/usr/local/
目录下
wget
下载
使用命令在想放置的目录下执行命令:
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz
解压
执行以下命令进行解压:
tar -Jxvf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz
文件名太长可以重命名
mv mysql-8.0.31-linux-glibc2.12-x86_64 mysql-8.0.31
创建用户组、用户,并赋予权限
groupadd mysql useradd -r -g mysql mysql
创建mysql数据目录并赋予权限
mkdir -p /data/mysql #创建目录
chown 750 /data/mysqlchown mysql:mysql -R /data/mysql/ -R #赋予权限
配置my.cnf文件
vim /etc/my.cnf
配置内容如下:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
[mysqld]
port=3306
user = mysql
# 设置mysql的安装目录
basedir=/usr/local/mysql-8.0.31
# 设置mysql数据库的数据的存放目录
datadir=/data/mysql
socket=/tmp/mysql.sock
#设置mysql数据库的日志及进程数据的存放目录
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
explicit_defaults_for_timestamp=true
初始化数据库
初始化
进入bin目录下
cd /usr/local/mysql-8.0.31/bin/
执行命令初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-8.0.31/ --datadir=/data/mysql/ --user=mysql --initialize
参数说明
--defaults-file=/usr/local/etc/my.cnf 指定配置文件(一定要放在最前面,至少 --initialize 前面) --user=mysql 指定用户(很关键) --basedir=/usr/local/mysql/ 指定安装目录 --datadir=/usr/local/mysql/data/ 指定初始化数据目录 --initialize 初始化生成临时密码
查看密码
cat /data/mysql/mysql.err
将mysql.server 复制到/etc/init.d/mysql中
cp /usr/local/mysql-8.0.31/support-files/mysql.server /etc/init.d/mysql
启动
service mysql start #启动
ps -ef|grep mysql #查看mysql进程
修改默认密码
进入/usr/local/mysql-8.0.31/bin
目录下,执行以下命令
./mysql -u root -p
输入刚刚存下来的默认密码,就能进入到熟悉的界面了。
执行以下命令修改密码
ALTER USER 'root'@'localhost' IDENTIFIED with mysql_native_password BY '你的新密码';
flush privileges; #刷新权限
配置远程连接
命令实例
use mysql;
# mysql8前
grant all privileges on *.* to '新用户名'@'%' identified by '密码' with grant option;
flush privileges; #刷新权限
# mysql8后:
CREATE ROLE 'root'@'%';#创建角色
CREATE USER 'root'@'%' IDENTIFIED BY '123456'; #创建用户
grant all privileges on *.* to "root"@"%"; #给角色授权
flush privileges; #刷新权限
#修改密码
ALTER USER 'root'@'%' IDENTIFIED with mysql_native_password by '123456';
REVOKE CREATE,DROP ON root.* FROM 'root'@'%'; #撤消root数据库级特权
flush privileges; #刷新权限
#修改主机
update mysql.user set host='具体要指定的主机ip' where user='root';
RENAME USER 'test'@'localhost' TO 'test'@'127.0.0.1'; #重命名
flush privileges; #刷新权限
由于已经有root用户了,我们直接设置使用root用户远程访问,执行以下命令
use mysql;
update user set host='%' where user='root';
flush privileges;
将Mysql配置到环境变量中
vi /etc/profile
export PATH=$PATH:/usr/local/mysql-8.0.31/bin
source /etc/profile