2.MySQL数据库的基本使用和管理

1.mysql数据存储结构

  1.1由“数据库”——》“表”——》“数据”组成

    1.2管理数据库需要使用SQL(结构化查询语言)

    SQL语言分为:

      1 数据查询语言DQL

       按照指定的组合、条件表达式或排序检索已存在的数据库中数据,不改变数据库中数据。

       命令:SELECT…FROM…WHERE…

      2 数据操纵语言DML  

       对已经存在的数据库进行元组的插入、删除、修改等操作

       命令:INSERT、UPDATE、DELETE

      3 数据定义语言DDL  

        创建、修改或删除数据库中各种对象,包括表、视图、索引等。

       命令:CREATE TABLE , CREATE VIEW, CREATE INDEX、ALTER TABLE ,
                    DROP TABLE , DROP VIEW, DROP INDEX

      4 数据控制语言DCL

       用来授予或收回访问数据库的某种特权、控制数据操纵事务的发生时间及效果、对数据库进行监视

       命令:GRANT、REVOKE、COMMIT、ROLLBACK

2.查询所有数据库

  通过命令行登录数据库,输入第一个查看数据库的sql语句

    mysql> show databases;  --默认显示4个数据库

      +--------------------+
      | Database |
      +--------------------+
      | information_schema |  --mysql元数据,基础数据
      | mysql |          --mysql配置数据库,其中包含用户信息(用户名和密码,权限管理)
      | performance_schema |  --mysql数据库软件的运行数据,日志信息,性能数据
      | test |           --测试数据库,空数据库
      +--------------------+

3,创建数据库

    3.1 sql语句为:create database    数据库名称;

    mysql> create database first;  --first为数据库名称

      Query OK, 1 row affected (0.01 sec)

    3.2 创建数据库时设置数据库的字符

     mysql> create database two    --此时不需输入分号,因为分号意味这语句结束,直接回车

        -> default character set utf8;  --设置默认字符为utf-8
     Query OK, 1 row affected (0.00 sec)

    3.3 查看数据库的默认字符集

    mysql> show create database first;     --first为数据库名称

    +----------+---------------------------------------------------------------+
    | Database | Create Database |
    +----------+---------------------------------------------------------------+
    | first | CREATE DATABASE `first` /*!40100 DEFAULT CHARACTER SET gbk */ |
    +----------+---------------------------------------------------------------+
    1 row in set (0.00 sec)

    3.4 删除数据库

    mysql> drop database two;      --two为数据库名称

    Query OK, 0 rows affected (0.17 sec)

    3.5 修改数据库的默认字符集

    mysql> alter database first default character set utf8;     --修改first数据库的字符为utf-8

    Query OK, 1 row affected (0.00 sec)  

4.表管理

    4.1选择数据库  

      mysql> use first;  --first为数据库名称
      Database changed

    4.2创建表

      mysql> create table student(    --student为表名称
        -> sid int,           --sid为字段名称 编号,int是字段类型  整形
        -> sname varchar(20),     --sname为字段名称 姓名,varchar(20)是字段类型 字符串长度是20
        -> sage int          --sage为字段名称 年龄,int是字段类型,整形
        -> );
      Query OK, 0 rows affected (0.14 sec)

     4.3查看所有表

    mysql> show tables;

      +-----------------+
      | Tables_in_first |
      +-----------------+
      | student |
      +-----------------+
      1 row in set (0.00 sec)

     4.4查看一张表的表结构

    mysql> desc student;    --student表名称

      +-------+-------------+------+-----+---------+-------+
      | Field | Type | Null | Key | Default | Extra |
      +-------+-------------+------+-----+---------+-------+
      | sid | int(11) | YES | | NULL | |
      | sname | varchar(20) | YES | | NULL | |
      | sage | int(11) | YES | | NULL | |
      +-------+-------------+------+-----+---------+-------+
      3 rows in set (0.05 sec)

     4.5删除表

    mysql> drop table student;

      Query OK, 0 rows affected (0.11 sec)

     4.6修改表

    mysql> alter table student add column sgender varchar(2);    --向student表中增加一个sgender的字段,column可以省略

      Query OK, 0 rows affected (0.06 sec)
      Records: 0 Duplicates: 0 Warnings: 0

    

      mysql> alter table student drop sgender;      --删除student表中sgender这个字段,column可以省略

      Query OK, 0 rows affected (0.06 sec)
      Records: 0 Duplicates: 0 Warnings: 0

      

      mysql> alter table student modify sname varchar(10);    --修改student表中sname字段的类型为varchar(10)
      Query OK, 0 rows affected (0.08 sec)
      Records: 0 Duplicates: 0 Warnings: 0

      

      mysql> alter table student change sname newsname varchar(20);    --修改student表中sname字段的名称,变为newsname
      Query OK, 0 rows affected (0.08 sec)
      Records: 0 Duplicates: 0 Warnings: 0

时间: 2024-12-10 18:16:58

2.MySQL数据库的基本使用和管理的相关文章

MySQL数据库服务器搭建及基本管理

1.安装MySQL数据库 从官网下载RPM包:http://dev.mysql.com/downloads/mysql/ 选择适用于当前系统的bundle集合包 [[email protected] 桌面]# tar -vxf MySQL-5.6.15-1.el6.x86_64.rpm-bundle.tar -C /opt/mysql/ MySQL-shared-5.6.15-1.el6.x86_64.rpm   //共享库 MySQL-devel-5.6.15-1.el6.x86_64.rpm

Mysql数据库理论基础之十一 ---- 日志管理

一.简介 由MySQL AB公司开发,是最流行的开放源码SQL数据库管理系统,主要特点: 1.是一种数据库管理系统 2.是一种关联数据库管理系统 3.是一种开放源码软件,且有大量可用的共享MySQL软件 4.MySQL数据库服务器具有快速.可靠和易于使用的特点 5.MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中 InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建.这样,表的大小就能超过单独文件的最大容量.表空间可包括原始磁盘分区,从而使得很大的表成为可能

MySQL数据库(五)—— 用户管理、pymysql模块

用户权限管理.pymysql模块 一.用户管理(权限管理) 在MySQL中自带的mysql数据库中有4个表用于用户管理的 # 优先级从高到低 user > db > tables_priv > columns_priv user #该表放行的权限,针对:所有数据,所有库下所有表,以及表下的所有字段 db #该表放行的权限,针对:某一数据库,该数据库下的所有表,以及表下的所有字段 tables_priv #该表放行的权限.针对:某一张表,以及该表下的所有字段 columns_priv #该

使用宝塔面板进行mysql数据库的创建备份恢复管理

MySQL的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,MySQL是一个非常流行的小型关系型数据库管理系统,2008年1月16号被Sun公司收购.目前MySQL被广泛地应用在Internet上的中小型 网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库. 在我的三 丰 免 费 云主 机上 安装了CentOS系统,并默认安装了宝塔管理面板,为了安全起见,在服务器在正常服

MySQL数据库(七)—— 用户管理和权限管理

一.管理用户 1.查询用户 第一步:切换到MySQL数据库 use mysql; 第二步:查询user表 select * from user; 两条记录都是root用户 ,其中第一条记录表示本机访问,第二条记录是远程访问. 注意:通配符%表示可以在任意主机登录查询数据库 2.新增用户 语法:create user '用户名'@'主机名' identified by '密码'; 3.删除用户 语法:drop user '用户名'@'主机名' 4.修改用户密码 语法:update user set

《深入浅出MySQL数据库开发、优化于管理维护》基础篇学习笔记

MySQL数据库物理文件默认存放位置:C:\ProgramData\MySQL\MySQL Server 5.5\data\MySQL通过配置my.int的datadir属性来指定数据库的物理存放位置. 一.DDL语句:1.创建数据库:create database test; 2.删除数据库:drop database test; 3.描述表:desc emp; 4.删除表:drop table emp; 5.修改表:(1)修改表类型:alter table emp modify ename

MySQL数据库应用(4)管理实战(1)

一.启动与关闭MySQL 1.MySQL启动基本原理说明 2.初始化诗句哭时MySQL系统输出给出的启动方法 mysqld_safe --user=mysql & 提示: 1.当找回root密码时,会经常勇士mysqld_safe --user=mysql &带参数启动 2.我们自己开发脚本启动数据库时可能会用到这个启动方法 3./etc/init.d/mysqld和mysqld_safe --user=mysql &的启动实质是一样的 3.优雅关闭数据库方法 关闭原理其实就是ki

MySQL数据库锁机制之MyISAM引擎表锁和InnoDB行锁详解

MySQL中的锁概念 Mysql中不同的存储引擎支持不同的锁机制.比如MyISAM和MEMORY存储引擎采用的表级锁,BDB采用的是页面锁,也支持表级锁,InnoDB存储引擎既支持行级锁,也支持表级锁,默认情况下采用行级锁. Mysql3中锁特性如下: 表级锁:开销小,加锁块:不会出现死锁,锁定粒度大,发生锁冲突的概率最高,并发度最低. 行级锁:开销大,加锁慢:会出现死锁:锁定粒度最小,发生锁冲突的概率最低,并发性也最高. 页面锁:开销和加锁界于表锁和行锁之间,会出现死锁:锁定粒度界与表锁和行锁

Linux命令应用大词典-第41章 MySQL数据库

41.1 mysqld_safe:MySQL服务器启动脚本 41.2 mysql_install_db:初始化MySQL数据目录 41.3 mysqlshow:显示MySQL数据库结构 41.4 mysqladmin:管理MySQL服务器 41.5 mylsamchk:检查和修复MyISAM表 41.6 mysql:MySQL命令行工具 41.7 mysqlimport:实现数据导入 41.8 mysqlcheck:检查和修复MyISAM表 41.9 mysqlbinlog:查看二进制日志文件