zoukankan      html  css  js  c++  java
  • 数据库的安装以及数据库的基本操作

    数据库的安装以及数据库的基本操作

    将所有的数据存放到一个第三方的公共位置,同一个软件凡是需要操作数据的,就必须去这个共享的位置操作

    第三方共享位置:数据库

    数据库集群:将同一个数据库中的数据,复制到不同的服务器中。

    MySQL数据:C -----> S架构软件

    ①:mysql数据库本质上就是一个基于网络通信的软件

    ②:所有基于网络通信的软件,底层都是socket

    ​ 服务端:

    ​ 基于网络通信

    ​ 收发消息

    ​ 客户端:

    ​ 基于网络通信

    ​ 收发消息

    所有语言若想要操作数据库,拿到服务端IP和port,都必须遵循一套标准的解析指令 --->SQL语句

    DBMS:数据库管理系统

    关系型数据库:MySQL、Oracle、DB2、sql server……

    ​ ①:报表结构

    ​ 需要哪些字段

    ​ 字段是什么类型

    ​ ②:字段与字段类型

    ​ name ---> 'tank' ---> 字符串

    ​ age---> 17 ---> 整型

    非关系型数据库:Redis、MongoDB……

    ​ 非关系型数据库一般以key:value的形式存储

    ​ {'name':'tank'}

    安装数据库

    - 安装数据库
            - 1.下载mysql安装包
            - 2.解压安装包放在D:中
            - 3.添加系统环境变量
            - 4.以管理员身份打开CMD,输入mysqld启动服务端,此时会卡主
                - bin目录下的: mysqld.exe
    
            - 5.在新建一个cmd,mysql客户端连接服务端,输入mysql -h 127.0.0.1 -P 3306 -p 密码
                - mysql初始化时无密码,可以进入游客模式,功能会很少
                - 无密码直接进入 ---》 不需要“-p 密码”
                - bin目录下的: mysql.exe
    
                全写: mysql -h 127.0.0.1 -P 3306 -p 密码
                简写: mysql -uroot -p 密码
    
            - 6.退出数据库客户端
                - exit;
                - quit;
    
            注意: SQL语句末尾必须加 “;” 号。
    
    
            - 查看操作系统中是否已经启动mysqld 服务端
                - tasklist | findstr "mysqld"
    
            - 杀死mysqld进程
                - taskkill /F /PID pid号
    
            - *****做服务端操作时,必须先以管理员身份打开
    
    
        - 数据库的命令:
            - 查看所有数据库:
                - show databases;
    
    
        - 制作系统服务
            - 1.必须将已启动的服务端mysqld关掉
            - 2.删掉已经启动过的mysqld的进程
            - 3.输入  mysqld --install ----> 安装mysqld系统服务
            - 4.输入 net start mysqld
    
    
        - mysql -u 登录mysql用户名(root) -p 密码
            - 默认自带 root 超级用户, 没有密码
            - 管理员登录
                - mysql -uroot 回车进入
    
            - 游客登录
                - mysql 回车
    
    
        - 修改密码:
            - 默认没有密码的情况下,设置密码
                - cmd>>>: mysqladmin -uroot password 123
    
            - 有密码的情况下,修改密码
                - cmd>>>: mysqladmin -uroot -p原密码 password修改的密码
                - cmd>>>: mysqladmin -uroot -p123456 password 123
    
        - 破解密码: 当密码忘记时采用
            - 1.关闭服务端
            - 2.跳过权限启动服务端
                - cmd>>>:  mysqld --skip-grant-tables
    
            - 3.客户端进入游客模式:
                - cmd>>>:  mysql
    
                - update mysql库.user表名 set 字段password=字段password('字段值') where 条件(若条件成立,则修改)user="root";
                - cmd>>>:  update mysql.user set password=password('123456') where user="root";
    
            - 4.重新启动服务端,不要跳过权限认证
                - 先kill掉跳过权限认证启动的服务端进程
                - 再手动去开服服务中的mysql服务即可
    
    
        - 设置配置文件:
           - 1.先在mysql目录下  --》 D:mysql-5.6.40-winx64
    
           - 2.创建一个名为 “my.ini” 的文件,这个是mysql的配置文件
                -   [mysqld]
                    character-set-server=utf8
                    collation-server=utf8_general_ci
    
                    # 这个是用python软件连接的客户端
                    [client]
                    default-character-set=utf8
    
                    # mysql软件的客户端
                    [mysql]
                    # 可写,可不写这样可以不需要用户名与密码直接登录mysql
                    # user='root'
                    # password=123
    
                    # 设置默认的字符编码
                    default-character-set=utf8
    
           - 3.重启mysql服务,即修改成功!
    

    数据库的基本操作

    库的操作

    - 增:
        语法: create database 库名;
            - create database db1;
    
    - 查
        语法: show databases;  # 查看所有库
              show create database db1;  # 查看db1库中的信息
    
    - 改
        语法: alter database 库名 charset="字符编码类型";
            - alter database db1 charset="utf8";
    
    - 删
        语法: drop database db1;
    

    表的操作

    - 操作表前,需要先切换到指定库
        语法: use 库名;
            - use db1;
    
        查看当前所在的库: select database()
    
    - 增
        varchar与char 都是字符串类型;
        varchar(20)
        语法: create table 表名(字段名 字段类型);
            create table user_info(name varchar(20), age int);
    
    - 查
        show tables;  # 查看当前库中所有的表
        desc user_info;  # 查看表结构
    
    - 改
        语法: alter table 表名 modify name varchar(28);
            - alter table user_info modify name varchar(28);
    
    - 删
        语法: drop table 表名;
            - create table test(id int);
            - drop table test;
    

    记录的操作(操作数据)

    - 增:
        语法: insert into 表名 values('字段类型的数据1', 字段类型的数据1);
            # 插入一条
            - insert into user_info values('tank', 17);
    
            # 插入多条
            - insert into user_info values('jason', 71), ('sean', 78);
    
    - 查:
        *: 指的是所有
        语法: select * from 表名;  # 查看表中所有的数据
                - select * from user_info;
    
            # 查看name 字段为 tank 的记录
                - select * from 表名 where 条件;  # 条件成立则查看成功!
                - select * from user_info where name="tank";
    
            # 查看name 字段为 tank 的age字段
                - select age from user_info where name="tank";
    
            # 查看所有的名字:
                - select name from user_info;
    
    - 改
        语法: update 表名 set 字段名=字段值 where 条件判断;  # 若条件成立,则修改成功!
    
            # 修改age为17的记录中name属性为 handsome
            - update user_info set name='handsome' where age=17;
    
            # 修改age>16的记录 中name属性为 d_sb
            - update user_info set name='d_sb' where age>16;
    
    - 删
    
        语法: delete from 表名;
            # 清空表记录,不提交,可恢复。
            - delete from user_info;
        
        语法:delete from 表名 where 条件
        	# 删除符合条件的记录
            - delete from user_info where name='d_sb';
    
        语法: truncate table 表名;
            # 删除,不可恢复
            - truncate table user_info;
    
  • 相关阅读:
    系统综合实践第三次实践
    系统综合实践第二次实践作业
    第1次实践作业
    软工总结
    团队Beta演示
    团队Beta5
    软工实践个人总结
    第09组 Beta版本演示
    第09组 Beta冲刺(5/5)
    第09组 Beta冲刺(4/5)
  • 原文地址:https://www.cnblogs.com/aheng/p/12018830.html
Copyright © 2011-2022 走看看