Linux之MySQL *** 作

Linux之MySQL *** 作,第1张

Linux之MySQL *** 作 Mysql基本 *** 作 1、Mariadb的安装和启动

kali *** 作系统中需要使用apt-get 命令来执行安装 *** 作
安装:apt-get -y install mariadb-server
启动:systemctl start mariadb
开机自启:systemctl enable mariadb
修改密码:mysqldamin -u用户名 -p旧密码 password ‘新密码’;

2、数据库 *** 作(不区分大小写,但是建议用大写,语句的可读性好)

连接数据库:mysql -u用户名 -p密码;
列出数据库:SHOW DATAbaseS;
选中要使用的数据库:USE 数据库名;
列出库中的表:SHOW TABLES;
创建新库:CREATE DATAbase 库名;
删除库:DROp DATAbase 库名;
创建表:CREATE TABLE 库名.表名(字段 类型,字段1 类型1);
删除表:DROP TABLE 库名.表名;
检查表格的列设置:DESCRIBE 库名.表名;
插入新的记录:INSERT INTO 库名.表名 VALUES (值1,值2,…);
查看表中的记录:SELECT * FROM 库名.表名;
查看建表语句:show create table 表名;

3、数据库表记录的 *** 作


添加一条记录,给每一个列(字段)赋值:
insert into 库名.表名 values(值列表);
添加多条记录,为每一列赋值
insert into 库名.表名 values(值列表1),(值列表2)…;

添加一条记录,为部分字段赋值
nsert into 库名.表名(字段名列表) values(值列表);
添加多条记录,为部分字段赋值
insert into 库名.表名(字段列表) values(值列表1),(值列表2)…;

删除表中所有的记录
delete from 库名.表名
只删除部分
delete from 库名.表名 where 条件表达式;

修改表中的每一条记录
update 表名 set 列名=值,列名2=值,…;
修改符合条件的部分记录
update 表名 set 列名=值,… where 条件表达式;

列出所有记录的所有字段
select * from 库名.表名;
列出部分字段
select 字段1,字段2,字段3… from 库名.表名
注释:如果字段与字段之间没有 ,分隔,则默认后一个字段是前一个字段的别名。
筛选,使用where 条件子句 进行查询
匹配的符号:= != > >= < <= and or
范围匹配:in(值列表) 属于列表中的数据。
not in (值列表) 不属于列表中的数据
between and 在两个范围之间的记录
模糊查询:like _代表一个不确定的字符,%代表多个不确定字符
在where 中使用字段则直接写,加上 ‘ ’ 表示一个字符串

4、grant权限

用户权限管理的作用是限制用户访问那些库、表,
限制对哪些表进行 *** 作,select、create、delete、alter等。
限制用户登录的ip或者域名
限制用户自己的选线是否可以授权给其他用户。
具体 *** 作
交互指令:GRANT 权限 ON 数据库名.表名 TO ‘用户名’@‘来源地址’ IDDENTIFIED BY ‘密码’;
参数注释:数据库名.表名 可以是*.* 表示所有数据库的所有表
权限列表:all select update insert delete
来源地址:localhost 指的是从本机登录
192.168.10.%表示从192.168.10.0/24网段登录,%是一个通配符,匹配一个网段。
用户名,密码存在与数据库中。
如果用户名不存在,grant会自动创建。

列出指定用户或者自己的权限: SHOW GRANTS [‘用户名’@‘客户机地址’];
取消指定用户授权:REVOKE 权限列表 ON 数据库名.表名 FROM ‘用户名’@‘来源地址’;

刷新权限,将权限信息写入数据库:flush privileges;

5、数据库的备份和恢复

mysqldump -u用户名 -p密码 库名 > 备份文件.sql 导出数据库的备份
mysqldump -u用户名 -p密码 --databases 库名1 库名2 > 导出文件.sql
mysql -u用户名 -p密码 库名 < 备份文件.sql 导入单个数据库
mysql -u用户名 -p密码 < 备份文件.sql 导入多个数据库

6、密码的重置

跳过授权:systemctl stop mariadb //停止服务 使加载user表
mysqld_safe --skip-grant-tables & //直接启动服务 --skip-grant-tables绕过验证
mysql -uroot //免密码登录
flush privileges //刷新
set password for root@localhost=password(‘pwd@123’); //设置新密码
quit;
强制关闭mysql_safe
pkill -9 mysqld //强杀mysqld进程
systemctl restart mariadb
mysql -uroot -ppwd@123
点击产看sql多表联合查询

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/4663621.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-06
下一篇 2022-11-06

发表评论

登录后才能评论

评论列表(0条)

保存