mysql数据库安装、连接、创建、权限

SQL(Structured Query Language结构化查询语?)

linux环境下:

?

1.安装数据库:

?
sudo apt install -y mysql-server mysql-client
?

2.开启数据库服务:

?
1. Ubuntu : service mysql start|stop|restart|status
2. Deepin : systemctl start|stop|restart|status mysqld
3. CentOS7 : systemctl start|stop|restart|status mysqld
4. CentOS6 : service mysqld start|stop|restart|status
?

3.连接数据库:

?
-- 第一次连接数据库
sudo mysql -h localhost -u root -p
-- 创建数据库用户之后,使用数据库用户连接
mysql -h localhost -u username -p123456 [-P3306]
  1. -h : host(ip地址) localhost = 127.0.0.1

  2. -u : username(数据库?户账户)

  3. -p : password(密码)

  4. -P : port(端?, 默认端?3306)

备注

第?次使? root 连接后最好添加?个新的?户来操作。出于安全考虑,?常开发中最好不要使? root

-- 创建新?户,并设置密码 
?
-- *.* 代表该?户可以操作任何库、任何表
?
-- 主机名可以使? ‘%‘, 代表允许该?户从任何机器登陆
?
GRANT ALL PRIVILEGES on *.* to ‘?户名‘@‘localhost‘ IDENTIFIED BY "密码" WITH
?
GRANT OPTION;
?
-- 刷新使权限?效
?
flush privileges;
?

4.退出数据库

?

四种?式效果?样:

  1. exit

  2. quit

  3. \q

  4. 快捷键: ctrl + d

5. 密码忘记怎么办?

  1. 打开配置: vim /etc/mysql/my.cnf

  2. 添加这么?段:

[mysqld] 
skip-grant-tables

如果?件中已存在 [mysqld] , 则直接将 skip-grant-tables 写到其下?即可。

  1. 修改完成后,保存退出,重启服务: sudo systemctl restart mysqld

创建账户、权限管理

  1. 创建账户、权限授予

    ?
    8.0 之前版本
    ?
GRANT ALL PRIVILEGES on *.* to ‘?户名‘@‘主机/%‘ IDENTIFIED BY "密码" WITH GRANT OPTION; 
flush privileges; -- 刷新使权限?效

ALL PRIVILEGES : 授予全部权限, 也可以指定 select 、 insert 等

*.*: 允许操作的数据库和表

WITH GRANT OPTION : 带有该?句说明允许?户将??拥有的权限授予别?

?
8.0 之后版本
?
CREATE USER `?户名`@`主机` IDENTIFIED BY ‘密码‘; -- 创建账户 
GRANT ALL ON *.* TO `?户名`@`主机` WITH GRANT OPTION; -- 授权
  1. 修改密码

ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY ‘你的密码‘;" 

3.查看权限

show grants; -- 查看当前?户的权限 
show grants for ‘abc‘@‘localhost‘; -- 查看?户 abc 的权限
  1. 回收权限

revoke delete on *.* from ‘abc‘@‘localhost‘; 

5.删除?户

use mysql; 
select host, user from user;
drop user ?户名@‘%‘;
  • 安装mycli(mysql语句提示):pip3 install mycli

    安装后,连接数据库语句:mycli -h localhost -u 数据库用户名 -p 密码

    mycli配置文件~/.myclirc

mysql数据库安装、连接、创建、权限

上一篇:Oracle根据已经存在的数据生成INSERT语句


下一篇:Sql面试宝典带答案