数据库
Mysql数据库学习!
yum安装mysql数据库
数据库基础知识
数据库条件约束
数据库用户及权限操作-DCL
数据库基础查询操作-DQL
数据库以及表结构操作-DDL
数据库表记录操作-DML
Mysql数据库常用安全加固设置
Redis数据库学习!
Redis数据库安装
SQL server数据库学习
SQL server2019基础安装
Mysql_windows安装
mysql数据库基本概念简介
数据库DQL操作
DDL数据库操作
数据库DML语句
DCL数据控制语句
多表查询
函数
事务
mysql存储引擎
mysql索引
mysql约束
mysql语句优化
本文档使用 MrDoc 发布
-
+
首页
mysql数据库基本概念简介
# 概述 为什么要使用数据库? 答:实现数据的持久化。 数据库存储类型多样,存储量大。由于其他文件等介质。 ## 概念 DB:database(数据库),保存数据的仓库,本质是一个文件系统。 DBMS:数据库管理系统,常说的Mysql数据库,管理软件。 SQL:结构化查询语言。 通过SQL,使用DBMS管理DB实现数据的增删查改。 常见的DBMS: - Oracle - Mysql - SQL Server - Sqlite - Redis 关系型数据库RDBMS:Mysql是开源的关系型数据库管理系统。MariaDB是Mysql的分支。 以行和列的形式存储数据,构成表,多个表构成数据库。关系模型表示。 MYsql优点: - 开源免费,使用成本低 - 性能卓越,服务稳定 - 体积小,使用简单,易于维护 - 社区活跃... ## 关系型数据库设计规则 表,记录,字段。 表的关联关系: - 一对一 - 一对多 - 多对多 - 自我关联 ## 基本名词定义 ```shell data:数据 database:数据库 dbms(database management system)数据库管理系统 rdbms(relational database management system)关系型数据库管理系统 table:表 field:字段 column:列 attribute:属性 type:类型 key:键值 index:索引 view:视图 sp(stored procedure):存储过程 trigger:触发器 primary key:主键 forerign key:外键 unique:唯一 performance:性能 tuning:调优 backup:备份 restore:恢复 user:用户 grant:授权 revoke:回收 privilege:权限 select:查询 update:修改 delete:删除 insert:添加 ``` ## 安装步骤 ```shell # 下载: 官网下载 GA版本 # 上传服务器并解压到指定文件: 一般默认/usr/local/mysql # 配置数据目录和启动用户: mysql:mysql ,数据目录为/usr/local/mysql/data,需手动创建 # 配置文件my.cnf, 进行端口,并发连接,字符集,存储引擎等设置 # 初始化: cd /www/mysql ./bin/mysqld --defaults-file=/www/mysql/etc/my.cnf --user=mysql --basedir=/www/mysql --datadir=/www/mysql/data --character-set-server=utf8mb4 --initialize # 配置启动方式,通过systemctl或者手动启动 cd /www/mysql-8.0.29/script # 复制进程文件到目录下 cp mysqld.service /usr/lib/systemd/system/ # 刷新 systemctl-daemon-reload # 修改默认密码 alter user 'root'@'localhost' identified by 'WZS134125' # 迁移data目录 mv data /mnt # 修改my.cnf datadir=/mnt # 通过sql查看内置变量 show VARIABLES LIKE '%bind_address%'; ``` ## 授权认证 mysql权限认证由用户名和主机名组成类似: root@localhost ```shell root@localhost和root@192.168.131.101是两个不同的用户 # 创建用户,设置密码,通过create user create user chuck@'localhost' identified by 'WZS134125'; # 授予权限,grant,revoke grant all privileges on *.* to chuck@'localhost'; # 授予所有权限 GRANT SELECT, INSERT ON database_name.table_name TO user_name; # 授予特定权限 GRANT SELECT, INSERT ON database_name.table_name TO role_name; # 授予角色的权限 # 查看权限 show grants for chuck@'localhost'; # 撤销权限 REVOKE ALL PRIVILEGES ON database_name.* FROM user_name; # 撤销所有权限 REVOKE SELECT, INSERT ON database_name.table_name FROM user_name; # 撤销特定权限 REVOKE ALL PRIVILEGES ON database_name.* FROM role_name; # 撤销角色权限 # 针对字段或者列进行限制 GRANT SELECT(name)ON database_name.table_name TO user_name; # 针对特定字段进行控制 ``` 权限级别: - 全局性,针对数据库示例所有的数据库权限控制 - 数据库级别,针对某些数据库的权限 - 数据库对象级别,针对特定的修改,查询,更新或者某个字段和列的权限 **概述: 我们需要存储的一些有价值的数据如:姓名、年龄、职业、项目、薪资等数据以一种格式化的数据存储在数据表中,多个关联的表存储在同一个数据库中,使用数据库管理软件进行查询、修改、删除操作,实际物理存储路径在服务器的目录上。**
Chuck
2023年11月28日 16:55
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码