centos8安装mysql8.0

最后都变了- 提交于 2020-03-17 21:10:03

安装步骤

1.下载mysql源安装包

在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/

wget https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm

2.安装mysql源

下载完成后使用下面命令安装源:

yum localinstall mysql80-community-release-el7-1.noarch.rpm

3.检查是否安装成功

yum repolist enabled | grep “mysql.-community.

4.安装mysql

yum install -y mysql-server

安装成功,启动MySQL

systemctl start mysqld

开机自动运行

systemctl enable mysqld

具体步骤 可查看此篇博文:https://blog.csdn.net/qq_38591756/article/details/82958333?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

注:mysql默认3306端口,如果远程连接不上,可以进行如下操作

检查centos8 是否开启防火墙 ,并放行3306端口。
查看防火墙是否开启
firewalld

1.查看是否放行

 firewall-cmd --list-port

2.放行3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

3.重启防火墙

firewall-cmd --reload

MySQL默认root用户本地连接,开启远程连接需要进行如下操作:

mysql开启远程访问权限(网上的通用做法)

mysql -u root -p
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';   这里的123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址

flush privileges;   这句表示从mysql数据库的grant表中重新加载权限数据

select  *  from user;   查询是否设置成功

我的做法是不更改root。先创建了一个普通用户,然后再提权

create user 'alex'@'%' identified by '123';
grant all privileges  on *.*  to "alex"@'%';
flush privileges;

如果你想创建一个新的用户,则需要以下操作:

进入到mysql数据库下

mysql> use mysql
Database changed

对新用户增删改

1.创建用户:

# 指定ip:192.118.1.1的用户登录
create user 'alex'@'192.118.1.1' identified by '123';
# 指定ip:192.118.1.开头的用户登录
create user 'alex'@'192.118.1.%' identified by '123';
# 指定任何ip的用户登录
create user 'alex'@'%' identified by '123';

2.删除用户

drop user ‘用户名’@‘IP地址’;

3.修改用户

rename user ‘用户名’@‘IP地址’ to ‘新用户名’@‘IP地址’;

4.修改密码

set password for ‘用户名’@‘IP地址’=Password(‘新密码’);

对当前的用户授权管理
#查看权限
show grants for ‘用户’@‘IP地址’

#授权用户仅对db1.t1文件有查询、插入和更新的操作
grant select ,insert,update on db1.t1 to “alex”@’%’;

表示有所有的权限,除了grant这个命令,这个命令是root才有的。用户对db1下的t1文件有任意操作

grant all privileges on db1.t1 to “alex”@’%’;

#用户对db1数据库中的文件执行任何操作
grant all privileges on db1.* to “alex”@’%’;

#用户对所有数据库中文件有任何操作
grant all privileges on . to “alex”@’%’;

#取消权限

取消用户对db1的t1文件的任意操作

revoke all on db1.t1 from ‘alex’@"%";

取消来自远程服务器的用户对数据库db1的所有表的所有权限

revoke all on db1.* from ‘alex’@"%";

#取消来自远程服务器的用户所有数据库的所有的表的权限
revoke all privileges on . from ‘alex’@’%’;

MySql备份命令行操作

备份:数据表结构+数据

mysqdump -u root db1 > db1.sql -p

备份:数据表结构

mysqdump -u root -d db1 > db1.sql -p

#导入现有的数据到某个数据库
#1.先创建一个新的数据库
create database db10;
# 2.将已有的数据库文件导入到db10数据库中
mysqdump -u root -d db10 < db1.sql -p

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!