回顾基本语句:
数据定义语言(DDL)
这类语言用于定义和修改数据库的结构,包括创建、删除和修改数据库、 表、视图和索引等对象。
主要的语句关键字包括 CREATE 、 DROP 、 ALTER 、 RENAME 、 TRUNCATE 等。
create database 数据库 ;
create table 表 (列1 数据类型 [ 约束条件], 列2 数据类型 【约束条件】……) add CONTRAINT 增加一些主键或者外键的约束
drop table/ drop database;
truncate 表;
rename 旧表名 TO 新表名 ;
alter 表 add 列 / drop 列 /
create view (虚表) / drop view
create user / drop user
数据操作语言(DML)
用于添加、删除、更新和查询数据库中的记录。这些语句是关系型数据库的 核心,用于操作表中的数据。主要的语句关键字包括 INSERT 、 DELETE 、 UPDATE 、 SELECT 等。
select 表的数据查询 from 表 WHERE 过滤条件 group by 列 order by ;
insert into 表(列1……)values (一行数据【和列是对应输入的】), (第二行数据)……;
update 表 SET 列 = 值 where 过滤条件 (定位修改的数据行);
delete from 表 where 过滤条件;
数据控制语言(DCL)
用于定义和管理数据库、表、字段或用户的访问权限和安全级别。主要的语 句关键字包括 GRANT 、 REVOKE 、 COMMIT 、 ROLLBACK 等。
GRANT // 数据库用户的授权 对应权限的内容见 MySQL CRASH COURSE p257 表 28.1
revoke // 数据库用户权限的回收【撤销】
commit / rollback // 对于事务的提交和回滚
数据查询语言(DQL)
这是专门用于从数据库中检索数据/ f
select cur();
select version();
联合查询等
join
UNION
一、安装
- 源码编译安装
a.获取源码 boost(包含这个组件的源码包)
b. cmake ---> 生成makefile
c. make
d. make install
e. 进行一些基础的优化
- 二进制 (软件包中包括已经编译完成的二进制程序以及需要的文件和配置文件 )
a. 直接获取安装需要的所有软件包的bundle 包 ,然后进行安装 【mysql 安装】
b. 直接配置mysql 官方的仓库 通过yum仓库安装
- 添加yum 仓库
[root@bogon ~]# wget https: //repo.mysql.com//mysql80-communityrelease-el8-9.noarch.rpm
--2024-04-27
20:31:45-- https: //repo.mysql.com//mysql80-communityrelease-el8-9.noarch.rpm
Resolving
repo.mysql.com (repo.mysql.com)... 23.210.109.97,
2a02:26f0:d8:980::1d68, 2a02:26f0:d8:98f::1d68
Connecting to repo.mysql.com (repo.mysql.com)|23.210.109.97|:443...
connected.
HTTP request sent, awaiting response... 200 OK
Length: 17792 (17K) [application/x-redhat-package-manager]
Saving to: ‘mysql80-community-release-el8-9.noarch.rpm’
mysql80-community-release-el8-9 100%
[=====================================================>] 17.38K -
-.-KB/s in 0.006s
2024-04-27 20:31:45 (3.02 MB/s) - ‘mysql80-community-release-el8-
9.noarch.rpm’ saved [17792/17792]
[root@bogon ~]# ls
aaa Desktop Downloads Music
original-ks.cfg Public Videos
anaconda-ks.cfg Documents keys mysql80-community-releaseel8-9.noarch.rpm
Pictures Templates
[root@bogon ~]# rpm -ivh mysql80-community-release-el8-9.noarch.rpm
[root@bogon ~]# ls /etc/yum.repos.d/
aa.repo bb.repo mysql-community-debuginfo.repo mysqlcommunity.repo
mysql-community-source.repo redhat.repo
可选 , 如果已经在系统中进行了相关数据的安装(mariadb 以及 mysql)
rpm -qa | egrep 'mysql|mariadb'
如果有提示任何包的安装信息,需要先卸载对应的包,然后再禁用下面的模块
yum module -y disable mysql # 禁用原本启用的mysql 模块 ,后续安装
时,可以使用第一步所设置的仓库进行安装
- 安装server 包
[root@bogon ~]# yum install mysql-community-server
- 启动服务
完成数据的初始化
创建基本的数据库和表
完成mysql 超级用户 root@localhost的创建以及密码的生成(限制root用户 只能从
mysql 运行的节点登录)
[root@mysql8 ~]# systemctl start mysqld
抓取用户密码
[root@mysql8 ~]# grep password /var/log/mysqld.log
2024-04-28T00:27:27.590106Z 6 [Note] [MY-010454] [Server] A
temporary password is generated for root@localhost: f%EqxVUy9d5u
修改密码
[root@mysql8 ~]# mysql -u root -p'f%EqxVUy9d5u' -h localhost
mysql: [Warning] Using a password on the command line interface can
be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.36
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input
statement.
mysql> alter user root@localhost identified by 'Redhat12~';
Query OK, 0 rows affected (0.01 sec)