有勇气的牛排博客

linux安装mysql 及 用户创建 授权操作文档

有勇气的牛排 581 数据库 2023-05-18 21:52:32

哈喽,大家好,我是有勇气的牛排(全网同名)🐮

有问题的小伙伴欢迎在文末评论,点赞、收藏是对我最大的支持!!!。

1 安装

1.1 ubuntu安装

安装 MySql

sudo apt-get install mysql-server

初始化配置

sudo mysql_secure_installation

学习用途统一设置密码为:mysql

密码难度等级 Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0 进制远程登录? Disallow root login remotely? 删除测试数据库并访问它? Remove test database and access to it? 现在重新加载特权表? Reload privilege tables now?

查看服务的状态信息

systemctl status mysql.service

image.png

配置远程访问

根用户权限进入

sudo mysql -uroot -p

image.png

GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";

localhost:表示仅本地访问,改为%就是所有主机可以链接。
123456:为新增权限用户设置的密码,%表示所有主机

1.2 CentoOS安装

在 https://dev.mysql.com/downloads/repo/yum/ 找到 yum 源 rpm 安装包

安装 MySQL源

# 下载 shell> wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm # 安装 mysql 源 shell> yum localinstall mysql57-community-release-el7-11.noarch.rpm

用下面的命令检查 mysql 源是否安装成功

yum repolist enabled | grep "mysql.*-community.*"

1.2.1 开始安装

yum install -y mysql-community-server

启动MySQL服务器和MySQL的自动启动

systemctl start mysqld systemctl enable mysqld

查看安装状态

systemctl status mysqld

重载修改过配置的文件

systemctl daemon-reload

1.2.2 卸载

查看安装了哪些

rpm -qa |grep -i mysql
yum remove mysql-community-common-5.7.40-1.el7.x86_64 yum remove mysql-community-libs-5.7.40-1.el7.x86_64 yum remove mysql-community-server-5.7.40-1.el7.x86_64 yum remove mysql57-community-release-el7-11.noarch yum remove mysql-community-client-5.7.40-1.el7.x86_64 yum remove mysql-community-libs-compat-5.7.40-1.el7.x86_64

1.3 docker安装

docker run -d \ -p 3306:3306 \ -v /usr/local/docker/mysql/hive/conf:/etc/mysql/conf.d \ -v /usr/local/docker/mysql/hive/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=root123456 \ --name mysql_master mysql:5.7

2 首次安装 修改密码

查询临时密码

grep 'temporary password' /var/log/mysqld.log

修改密码

alter user 'root'@'localhost' IDENTIFIED BY 'root'; 或者 set password for 'root'@'localhost'=password('root');

配置允许简单密码

设置密码有效程度 4 为及以上 set global validate_password_length=4; 设置密码策略最低级别 set global validate_password_policy=0;

3 查看数据库服务

3.1 登录

登录

mysql -uroot -p
show databases;

3.2 查看服务端口

show global variables like 'port';
mysql> show global variables like 'port'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | port | 3306 | +---------------+-------+ 1 row in set (0.01 sec)

4 新建 数据库 和 用户

此操作需要root用户来进行

创建数据库:csdb

CREATE DATABASE csdb;

4.1 用户操作

1、创建用户

创建用户:cs
密码:cslogin

create user cs identified by 'cslogin';

2、修改密码

3、查看用户

select user, host from mysql.user;

4、删除用户

drop user cs@'%';

4.2 授权操作

csdb数据库所有操作权限都授权给用户cs,密码:cslogin

grant all privileges on csdb.* to cs@'%' identified by 'cslogin'; flush privileges;

4.3 查看用户cs,权限授予执行的命令

show grants for 'cs';

查看mysql连接的授权信息

select host,user from mysql.user;
mysql> select host,user from mysql.user; +-----------+------------------+ | host | user | +-----------+------------------+ | localhost | mysql.infoschema | | localhost | mysql.session | | localhost | mysql.sys | | localhost | root | +-----------+------------------+ 4 rows in set (0.00 sec)

5 报错

5.1 Failing package is: mysql-community-client-5.7.38-1.el7.x86_64 GPG Keys are configured as: file://

原因:MySQL GPG 密钥已过期导致

解决办法:执行一下命令,解决

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

5.2 navicat无法连接、防火墙已关闭,仍无法连接

# 查看路由是否打开,1表示打开、0表示未打开 sysctl net.ipv4.ip_forward # 开启路由 echo "net.ipv4.ip_forward = 1" >>/etc/sysctl.conf #加载内核 sysctl -p

留言

专栏
文章
加入群聊