首页 > 数据库 >mysql安全基础(1)常见语句

mysql安全基础(1)常见语句

时间:2022-09-30 00:56:18浏览次数:86  
标签:语句 information show -- 常见 mysql select schema

上一篇: docker安装和登陆mysql发现用docker安装mysql非常简洁方便快速,继续学习。

1.查看当前数据库排行榜

可以通过当前数据库使用排行榜:db-engines.com
The most popular database management systems
September 2022    Score
1.    Oracle    1238
2.    MySQL    1212
3.    Microsoft SQL Server    926
4.    PostgreSQL    620
5.    MongoDB    490

2.进入mysql

查看容器
docker  ps -a //查看存在的所有容器,包括停止的
docker ps //查看正在运行的
docker start 容器id //启动停止的容器
docker exec -it sqlinjectmysql /bin/bash //打开进入容器
mysql -uroot -p123 //进入数据库
select user,host from myslql.user;//查看mysql支持的用户
+---------------+-----------+
| user          | host      |
+---------------+-----------+
| root          | %         |
| mysql.session | localhost |
| mysql.sys     | localhost |
| root          | localhost |
+---------------+-----------+
4 rows in set (0.00 sec)
第一个用户是可以远程连接的,上一篇介绍是如何创建的用户即:
docker run --name sqlinjectmysql -d -p 4001:3306 -e MYSQL_ROOT_PASSWORD=123 mysql镜像id  
//要进行网络访问就必须端口映射

3.查看数据库中的系统库

show databases; //查看系统库
| Database
+--------------------
| information_schema
| mysql
| performance_schema
| sys

information_schema:信息数据库,存放所有库的信息,库名,表名,字段以及权限,也称之为元数据。渗透作用很大。
schemata,tables,colums等.
比如:
show databases; 等价于:
SELECT schema_name FROM information_schema.schemata;

mysql:用户账户和权限信息,一些存储过程、事件的定义信息,一些运行过程中产生的日志信息,一些帮助信息以及时区信息。
比如:select user,host from mysql.user;

performance_schema:数据库服务器运行过程中的一些状态信息,是对 MySQL 服务器的一个性能监控。
包括统计最近执行了哪些语句,在执行过程的每个阶段都花费了多长时间,内存的使用情况等等信息。

sys:通过视图的形式把 information_schema 和 performance_schema 结合起来,可以更方便的了解 MySQL 服务器的一些性能信息。

4.两种注释:

1.-- (杠杠空格)这是注释标记
2.#(井号)这是注释标记

5.常用sql语句

--查看所有库
show databases;

--进入某个库查看所有表
use mysql ;
show tables;
--等同
show tables from mysql;

6.select语句

--常见函数
select now(); --当前时间
select database(); --当前所在库 根据use调整。
select version(); --版本
select user(); --当前登陆用户

--属性
select @@datadir; //查看数据存放位置
select @@basedir; //查看数据库位置
select @@version_compile_os; //查看宿主系统

--information_schema库,一些特定表内容提取为特定的语句
show databases;等同:
mysql> select schema_name from information_schema.schemata;
+--------------------+
| schema_name        |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |

-- 创建test库
 create database test charset utf8mb4;
use test;
create table t1(id int);
drop table t1;
show tables; -- 等于:show tables from test;
alter table t1 add name varchar(32);
desc t1; -- 显示表字段
insert into t1 values(1,"job"),(2,"jack"),(3,"bob");

select * from information_schema.tables where 
table_schema="test"; -- 查询库里有什么表
select * from information_schema.columns where table_schema="test"; -- 查询库里有字段
-- 库名称的获取可以使用函数然后作为参数传递:
show database();

-- union  联合两个以上select语句(追加显示),
注意:前后记录必须列数一样多,否则报错)。(利用这个确认字段数量)
mysql> select * from t1 union select 1,2;
+------+------+
| id   | name |
+------+------+
|    1 | job  |
|    2 | jack |
|    3 | bob  |
|    1 | 2    |
+------+------+
select user,host from mysql.user union select * from test.t1;
| user          | host      |
+---------------+-----------+
| root          | %         |
| mysql.session | localhost |
| mysql.sys     | localhost |
| root          | localhost |
| 1             | job       |
| 2             | jack      |
| 3             | bob       |

 

标签:语句,information,show,--,常见,mysql,select,schema
From: https://www.cnblogs.com/straybirds/p/16737308.html

相关文章

  • 学习 MySQL 需要知道的 28 个小技巧
    如何快速掌握MySQL?培养兴趣兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率。不管学习 MySQL5.7 还是 MySQL8.0 都不例外!夯实SQL基础计算机领......
  • MySQL——SQL加锁机制简要分析
    前提:针对于InnoDB引擎行锁讨论 锁机制MySQL的锁机制可以分为:锁模型(lock mode)和锁类型(locktype) 锁模型(lock mode)共享锁&排他锁InnoDB实现了两种类型的......
  • mysql
                    ......
  • git常见命令
    gitconfig--globaluser.name"name"//全局配置用户名,--global可以放在最后gitconfig--globaluser.email"email"//全局配置邮箱,--global可以放在最后gitremot......
  • 常见正则
    常见正则手机号/^1\d{10}$|^[2-9]\d{6,7}$|^[48]00\d{7}$|^[19]\d{4}$|^1\d{2}$/;邮箱/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-......
  • Django InspectDB 缺少mysql/mariadb的注释问题。
    我的是3.13.1。修改2处文件。1.django\core\management\commands\inspectdb.py2.django\db\backends\mysql\introspection.py1.inspectdb.py@@-213,6+213,8@@clas......
  • 从结算业务 深入理解 并发,mysql 乐观锁,可重复读
    从结算业务深入理解并发,mysql乐观锁,可重复读结算一般就是,把一些未结算的订单金额,周期性的结算到对应的账户表里面去。一般就是通过定时任务分批跑,比如每个......
  • MySQL拷贝表的几种方式
    Mysql拷贝表拷贝结构-添加数据##拷贝结构CREATETABLEnewTableLIKEoldTable;##添加数据INSERTINTOnewTableSELECT*FROMoldTable;1234拷贝结构和数据CREATETAB......
  • mysql8日志占满磁盘解决办法
    SHOWBINARYLOGS;setglobalbinlog_expire_logs_seconds=60*60*24;showvariableslike'%expire%';flushprivileges;永久改动可以找到/etc/mysql/my.cnf(Ubunt......
  • Docker MySql8 创建、删除、授权用户
    目录DockerMySql8创建、删除、授权用户1、登录MySql82、用户操作2.1、查看用户2.2、创建本地用户2.3、创建外网可访问用户2.4、修改用户2.5、删除用户3、操作用户权限3.1......