当前位置: 首页 > news >正文

【学习笔记2.19】动态规划、MySQL、Linux、Redis(框架)

动态规划

  • 343整数拆分
class Solution {public int integerBreak(int n) {int dp [] = new int [n + 1];//dp[i]:正整数i拆分后的最大乘积dp[2] = 1;for(int i = 2;i <= n ;i ++){for(int j = 1;j < i;j ++){dp[i] = Math.max(dp[i],Math.max(j * (i - j),j * dp[i - j]));}        }return dp[n];}
}
  • 96. 不同的二叉搜索树 - 力扣(LeetCode)
class Solution {public int numTrees(int n) {int dp [] = new int [n + 1];//dp[i] : i个节点组成的二叉搜索树种类。//规律: 当n = 1  sub = 1种   单独一个//        n = 2  sub = 2种  左斜 + 右斜//        n = 3  sub = 5种  1开头:dp[0] (1种) * dp[2] (2种)   2//                          2开头:dp[1] (1种) * dp[1] (1种)   1//                          3开头:dp[2] (2种) * dp[0] (1种)   2dp[0] = 1;dp[1] = 1;for(int i = 2; i <= n;i ++){for(int j = 1; j <= i; j ++){dp[i] += dp[i - j] * dp[j - 1];}}return dp[n];}
}

MySQL

整理重点章节
在这里插入图片描述

第二章:MySQL的数据目录

MySQL8的主要目录结构

使用命令:find / -name mysql 来查看目录结构。

  • 数据库文件的存放路径

    /var/lib/mysql/

  • 相关命令目录

    /usr/bin**(mysqladmin、mysqlbinlog、mysqldump等命令)和/usr/sbin。

  • 配置文件目录

    /usr/share/mysql-8.0(命令及配置文件),/etc/mysql(如my.cnf)

数据库和文件系统的关系

  • 四个系统自带数据库

    mysql、information_schema、performance_schema、sys

  • 数据库在文件系统中的表示

在这里插入图片描述

  • 表在文件系统中的表示(InnoDB存储引擎模式)

    .frm 描述表结构,字段长度等信息。

    .ibd 文件就用来存储表中的数据和索引。

  • MySQL5.7 中会在data/a的目录下生成 db.opt 文件用于保存数据库的相关配置。比如:字符集、比较规则。而MySQL8.0不再提供db.opt文件。

  • MySQL8.0中不再单独提供b.frm,而是合并在b.ibd文件中。

第三章:用户与权限管理

用户管理

  • 登录MySQL服务器

    mysql –h hostname|hostIP –P port –u username –p DatabaseName –e "SQL语句"
    

    举例:

    mysql -uroot -p -hlocalhost -P3306 mysql -e "select host,user from user"
    
  • 创建/修改/删除用户

    创建用户:

    CREATE USER 用户名 [IDENTIFIED BY '密码'][,用户名 [IDENTIFIED BY '密码']];
    

    修改用户:

    UPDATE mysql.user SET USER='li4' WHERE USER='wang5';
    FLUSH PRIVILEGES;
    

    删除用户:

    DROP USER user[,user]…;
    
  • 设置/修改密码

    设置密码:

    ALTER USER USER() IDENTIFIED BY 'new_password';
    

    修改密码:

    ALTER USER user [IDENTIFIED BY '新密码']
    [,user[IDENTIFIED BY '新密码']]…;
    

权限管理

  • 查看权限:
show privileges;

(1) CREATE和DROP权限 ,可以创建新的数据库和表,或删除(移掉)已有的数据库和表。如果将MySQL数据库中的DROP权限授予某用户,用户就可以删除MySQL访问权限保存的数据库。

(2)SELECT、INSERT、UPDATE和DELETE权限 允许在一个数据库现有的表上实施操作。

(3) SELECT权限只有在它们真正从一个表中检索行时才被用到。

(4) INDEX权限 允许创建或删除索引,INDEX适用于已有的表。如果具有某个表的CREATE权限,就可以在CREATE TABLE语句中包括索引定义。

略…

  • 授予权限

    GRANT 权限1,权限2,…权限n ON 数据库名称.表名称 TO 用户名@用户地址 [IDENTIFIED BY ‘密码口令’];
    

权限表

  • user表

    user表是MySQL中最重要的一个权限表, 记录用户账号和权限信息 ,有49个字段。

  • db表

    查看表结构:

    DESCRIBE mysql.db;
    

    有用户列和权限列,权限列字段决定用户是否具有创建和修改存储过程的权限。

  • tables_priv表和columns_priv表

    tables_priv表用来 对表设置操作权限 ,columns_priv表用来对表的 某一列设置权限 。

  • procs_priv表

    procs_priv表可以对 存储过程和存储函数设置操作权限

角色管理

引入角色的目的是 方便管理拥有相同权限的用户 。恰当的权限设定,可以确保数据的安全性,这是至关重要的。

在这里插入图片描述

  • 创建角色/赋予权限/查看权限/回收权限/删除角色等操作见开发文档。

Linux

学习Linux命令
在这里插入图片描述

Redis

在这里插入图片描述

http://www.lryc.cn/news/13082.html

相关文章:

  • String intern方法理解
  • 解决 cocosjs与安卓原生集成 崩溃问题
  • spring注解方式整合Dubbo
  • Git详解
  • 003__JAVA模板方法-设计模式
  • Springboot项目集成Netty组件
  • python 中的import cfg问题
  • [oeasy]python0088_字节_Byte_存储单位_KB_MB_GB_TB
  • vue3.0 生命周期
  • CGAL 数字类型
  • 如何将Python打包后的exe还原成.py?
  • CJSON简单介绍
  • 算法训练营 day49 动态规划 爬楼梯 (进阶)零钱兑换 完全平方数
  • Vue:extends继承组件复用性
  • ChatGPT 的一些思考
  • GEE学习笔记 六十九:【GEE之Python版教程三】Python基础编程一
  • 大数据全系安装
  • stable-diffusion-webui 安装使用
  • 3D点云处理:点云聚类--FEC: Fast Euclidean Clustering for Point Cloud Segmentation
  • 华为OD机试题 - 射击比赛(JavaScript)| 代码+思路+重要知识点
  • 流程引擎之Flowable简介
  • AcWing:4861. 构造数列、4862. 浇花(C++)
  • 进程的概念
  • 自动化测试5年经验,分享一些心得
  • independentsoft.de/MSG .NET Framework Crack
  • 基于Transformer的NLP处理管线
  • 二叉树OJ(一)二叉树的最大深度 二叉搜索树与双向链表 对称的二叉树
  • 使用Fairseq进行Bart预训练
  • n阶数字回转方阵 ← 模拟法
  • 【人工智能AI】二、NoSQL 基础知识《NoSQL 企业级基础入门与进阶实战》