zoukankan      html  css  js  c++  java
  • mysql基础

    数据库

    数据库相关概念
    数据库服务器(本质就是一台计算机,该计算机上安装有数据库管理软件的服务端)
    数据库管理系统RDBMS(本质就是一个C/S架构的套接字软件)
    库(文件夹)---->数据库
    表(文件)
    记录:抽取一个事物的所有典型的特征/数据

    数据库管理软件分类
    关系型:有表结构,存取数据前必须先定义表结构,存数据必须按照字段的类型或者约束来
    典型代表:MySQL,Oracle,DB2,SQL Server
    非关系型:
    存取数据都是采用key:value的形式
    代表:mongodb,redis

    基本管理(windows平台)

    1、安装
    2、加环境变量
    3、把mysqld软件做成系统服务
    注意:制作之前先把mysqld关掉
    tasklist |findstr mysqld
    taskkill /F /PID 8372
    制作:
    mysqld --install
    查看:
    windows+r 输入services.msc

    4、启动:
    未制作系统服务的启动方式:
    1、启动服务端 mysqld
    2、启动客户端
    mysql -uroot -p -h127.0.0.1 -P 3306
    如果是在本机登录mysqld服务端可以简写:
    mysql -uroot -p
    制作完系统服务后就可以鼠标点击启动或关闭mysql:
    windows+r 输入services.msc 找到mysql,启动或关闭

    5、破解管理员密码
    1、先关闭mysqld服务端
    2、以跳过授权表的方式在命令行中启动mysqld服务端
    mysqld --skip-grant-tables
    3、客户端直接以无密码的方式登录root用户,修改密码
    mysql -uroot -p
    update mysql.user set password=password("123") where user="root" and host="localhost"; flush privileges;(权限刷新)
    4、在命令行中用taskkill杀死mysqld服务,然后正常启动mysqld
    taskkill /F /PID 131312

    6、统一字符编码
    1、在mysql安装目录下新建my.ini文件
    2、修改my.ini

    1      [mysqld]
    2 character-set-server=utf8
    3 collation-server=utf8_general_ci
    4 [client]
    5 default-character-set=utf8
    6 [mysql]
    7 default-character-set=utf8

    3、重启mysqld
    4、客户端登录,输入s查看结果

    基本SQL语句

    文件夹(库)

    1create database db1 charset utf8;

    1 alter database db1 charset gbk;

    1   查看所有库的库名
    2 show databases;
    3 单独查看某一个库的信息
    4 show create database db1;

    1drop database db1;

    文件(表)
    首先切换文件夹:

    1use db1;
    2select database(); #查看当前所在文件夹、

    1create table t1(id int,name char);

    1alter table t1 modify name char(16);

    1    查看当前库下所有的表名
    2 show tables;
    3 查看t1表的详细信息
    4 show create table t1;
    5 查看表结构
    6 desc t1;

    1 drop table t1;

    文件的一行内容(记录)

    1insert into db1.t1 values
    2(1,'egon'),
    3(2,'alex'),
    4(3,'lxx');

    1update db1.t1 set name='sb' where id > 1;

    1select id,name from db1.t1;

    1delete from db1.t1 where name = "SB" ;

    存储引擎

    什么是存储引擎
    数据库中不同类型的表,会对应mysql不同的存取机制,表类型又称为存储引擎

    存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)
    在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的。而MySql数据库提供了多种存储引擎。用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎

    SQL 解析器、SQL 优化器、缓冲池、存储引擎等组件在每个数据库中都存在,但不是每 个数据库都有这么多存储引擎。MySQL 的插件式存储引擎可以让存储引擎层的开发人员设 计他们希望的存储层,例如,有的应用需要满足事务的要求,有的应用则不需要对事务有这 么强的要求 ;有的希望数据能持久存储,有的只希望放在内存中,临时并快速地提供对数据 的查询。

    存储引擎的使用
    方法1:建表时制定

    1MariaDB [db1]> create table innodb_t1(id int,name char)engine=innodb;
    2MariaDB [db1]> create table innodb_t2(id int)engine=innodb;
    3MariaDB [db1]> show create table innodb_t1;
    4MariaDB [db1]> show create table innodb_t2;

    方法2:在配置文件中指定默认的存储引擎

    1/etc/my.cnf
    2[mysqld]
    3default-storage-engine=INNODB
    4innodb_file_per_table=1

    查看

    1[root@egon db1]# cd /var/lib/mysql/db1/
    2[root@egon db1]# ls
    3db.opt innodb_t1.frm innodb_t1.ibd innodb_t2.frm innodb_t2.ibd

    小练习

    1MariaDB [db1]> create table t1(id int)engine=innodb;
    2MariaDB [db1]> create table t2(id int)engine=myisam;
    3MariaDB [db1]> create table t3(id int)engine=memory;
    4MariaDB [db1]> create table t4(id int)engine=blackhole;
    5MariaDB [db1]> quit
    6[root@egon db1]# ls /var/lib/mysql/db1/ #发现后两种存储引擎只有表结构,无数据
    7db.opt t1.frm t1.ibd t2.MYD t2.MYI t2.frm t3.frm t4.frm
    8#memory,在重启mysql或者重启机器后,表内数据清空
    9#blackhole,往表内插入任何数据,都相当于丢入黑洞,表内永远不存记录
  • 相关阅读:
    多测师讲解html _伪类选择器17_高级讲师肖sir
    多测师讲解html _后代选择器16_高级讲师肖sir
    多测师讲解html _组合选择器_高级讲师肖sir
    多测师讲解html _标签选择器14_高级讲师肖sir
    前端 HTML form表单标签 input标签 type属性 重置按钮 reset
    前端 HTML form表单标签 textarea标签 多行文本
    前端 HTML form表单标签 input标签 type属性 file 上传文件
    前端 HTML form表单标签 input标签 type属性 radio 单选框
    前端 HTML form表单标签 input标签 type属性 checkbox 多选框
    前端 HTML form表单目录
  • 原文地址:https://www.cnblogs.com/guodengjian/p/9003422.html
Copyright © 2011-2022 走看看