mysql创建数据库

MySQL(1)

╄→гoц情女王★ 提交于 2020-02-15 22:25:39
这是一个关系型数据库,存在表的概念。  结构 数据库可以存放多张表,每个表可以存放多个字段,每个字段可以存放多个记录。 dos命令操作数据库。   PHPstudy使用终端打开数据库 对数据库进行增删查改   ;是数据库的结束符,没有加分号即使按回车也代表这个语句没有结束。   查看数据库的指令 show databases;      创建数据库  create database 数据库名;      删除数据库的指令  drop database 数据库名;      进入某一个数据库中  use数据库名;      对数据表增查删改   查看数据表  show tables;      创建表  create table 表名(字段1 类型,字段2 类型)      删除表  drop table 表名;      修改表名  alter table 表名 rename新表名;      进入表里对字段进行操作       查看表里的定义  desc 表名;          添加字段     字段定义  字段名和字段类型都要写     alter table 表名 add 字段定义;          删除字段  alter table 表名 drop 字段名;          修改字段  alter table 表名 change 旧的字段名 字段定义;        

必备Mysql命令

百般思念 提交于 2020-02-15 22:25:12
文章来源:https://macrozheng.github.io/mall-learning/#/reference/mysql 开发者必备Mysql命令 开发者必备Mysql常用命令,涵盖了数据定义语句、数据操纵语句及数据控制语句,基于Mysql5.7。 数据定义语句(DDL) 数据库操作 登录数据库: mysql -uroot -proot 创建数据库: create database test 查看所有数据库: show databases 选择数据库并使用: use test 查看所有数据表: show tables 删除数据库: drop database test 表操作 创建表: create table emp(ename varchar(10),hiredate date,sal decimal(10,2),deptno int(2)) create table dept(deptno int(2),deptname varchar(10)) 查看表的定义: desc emp 查看表定义(详细): show create table emp \G 删除表: drop table emp 修改表字段: alter table emp modify ename varchar(20) 添加表字段: alter table emp add column age int

面试官系列,深入数据库分区分库分表

做~自己de王妃 提交于 2020-02-15 17:53:53
一、为什么要分库分表 软件时代,传统应用都有这样一个特点:访问量、数据量都比较小,单库单表都完全可以支撑整个业务。随着互联网的发展和用户规模的迅速扩大,对系统的要求也越来越高。因此传统的MySQL单库单表架构的性能问题就暴露出来了。而有下面几个因素会影响数据库性能: 数据量 MySQL单库数据量在5000万以内性能比较好,超过阈值后性能会随着数据量的增大而变弱。MySQL单表的数据量是500w-1000w之间性能比较好,超过1000w性能也会下降。 磁盘 因为单个服务的磁盘空间是有限制的,如果并发压力下,所有的请求都访问同一个节点,肯定会对磁盘IO造成非常大的影响。 数据库连接 数据库连接是非常稀少的资源,如果一个库里既有用户、商品、订单相关的数据,当海量用户同时操作时,数据库连接就很可能成为瓶颈。 为了提升性能,所以我们必须要解决上述几个问题,那就有必要引进分库分表,当然除了分库分表,还有别的解决方案,就是NoSQL和NewSQL,NoSQL主要是MongoDB等,NewSQL则以TiDB为代表。 二、分区分库分表的原理 1、什么是分区、分表、分库 (1)分区 就是把一张表的数据分成N个区块,在逻辑上看最终只是一张表,但底层是由N个物理区块组成的,分区实现比较简单,数据库mysql、oracle等很容易就可支持。 (2)分表

Mysql新建用户备忘录

ε祈祈猫儿з 提交于 2020-02-15 09:15:00
Mysql新建用户备忘录 难得抽点时间码码字 数据库实验需求需要多人合作完成视图,因此就有了操作同一个数据库的需求 然而矛盾是我并不想因为某人的操作而导致整个库不能用(虽然只是个docker容器),因此就有了新建用户的需求,顺带授权。 通过资料的查阅总结一下,方便自己下次查阅 首先由于是Docker容器,所以先进入容器,期中mysql是容器名 docker exec -it mysql /bin/bash 接下来登陆,就跟普通shell登陆一样 登陆完毕之后需要新建用户,关于这个问题,有前人总结好了( 传送门 ),我就直接拿来用了 1.创建用户: # 指定ip:192.118.1.1的mjj用户登录 create user 'mjj'@'192.118.1.1' identified by '123'; # 指定ip:192.118.1.开头的mjj用户登录 create user 'mjj'@'192.118.1.%' identified by '123'; # 指定任何ip的mjj用户登录 create use 'mjj'@'%' identified by '123'; 2.删除用户 drop user '用户名'@'IP地址'; 3.修改用户 rename user '用户名'@'IP地址' to '新用户名'@'IP地址'; 4.修改密码 set password

mysql 初识之日志文件篇

会有一股神秘感。 提交于 2020-02-15 07:49:19
日志文件 1. err日志 error log 记录mysql在运行的过程中所有较为严重的警告和错误信息,以及mysql server每次启动和关闭的详细信息。系统在默认情况下关闭error log 功能。error log 默认存放在data目录下,默认文件名为主机名.err。error log 通过两种方式开启: 1). 启动mysqld时,附加上--log-error参数 2) . 在my.cnf中配置log-error系统环境变量 当进入mysql后执行 flush logs命令后,mysql会将当前的错误日志文件附加-old文件保存,并且创建一个新的空错误日志文件,仅仅在指定--log-error的情况下。 注:error log 不全是保存是警告和错误信息,还保存每次启动和关闭的信息。 ps启动时信息: 130420 16:19:29 mysqld_safe mysqld from pid file /data0/mysql_data_7706/FZTEST-24178.pid ended 130420 16:19:30 mysqld_safe Starting mysqld daemon with databases from /data0/mysql_data_7706 error: Found option without preceding group in

MySQL 数据库表的约束

穿精又带淫゛_ 提交于 2020-02-15 05:06:46
数据库约束的种类 约束名 约束关键字 主键 primary key 唯一 unique 非空 not null 外键 foreign key 检查约束 check 注:mysql 不支持,sql支持 主键约束 创建主键方式 在创建表的时候给字段添加主键 字段名 字段类型 PRIMARY KEY 例1: CREATE TABLE tb_info ( id INT PRIMARY KEY, name VARCHAR(30), age INT ); 例2: CREATE TABLE tb_info ( id INT, name VARCHAR(30), age INT, PRIMARY KEY(id) ); 在已有表中添加主键 ALTER TABLE 表名 ADD PRIMARY KEY(字段名); 例: ALTER TABLE tb_info ADD PRIMARY KEY(id); 删除主键的方式 删除单表主键约束 ALTER TABLE 表名 DROP PRIMARY KEY; 删除有外键连接的表的主键 第一步:解除外键约束 ALTER TABLE 外键表 DROP FOREIGN KEY 外键名称 第二步:删除主键 ALTER TABLE 主键表 DROP PRIMARY KEY; 如:删除tb1的主键 这里有两个表,tb2的外键连接tb1的主键 第一步:解除与tb2的外键约束

Mysql + canal + zookeeper环境搭建

一世执手 提交于 2020-02-14 23:19:29
Mysql + canal + zookeeper环境搭建 一、mysql集群搭建 1. mysql基本环境 操作系统: Linux version 2.6.32-431.el6.x86_64 数据库:MySQL Community Server 5.7.20 主节点IP:10.60.81.157 主节点IP:10.60.81.158 从节点IP:10.60.81.159 2. 安装mysql 2.1.官网下载MySQL mysql-5.7.20-1.el6.x86_64.rpm-bundle.tar 2.2. 三个节点都安装: 2.2.1.三个节点查看是否安装mysql rpm -qa | grep mysql rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.x86_64 (有则删除) 2.2.2. 三个节点都安装mysql tar –xvf mysql-5.7.20-1.el6.x86_64.rpm-bundle.tar rpm -ivh mysql-community-common-5.7.20-1.el6.x86_64.rpm rpm -ivh mysql-community-libs-5.7.20-1.el6.x86_64.rpm rpm -ivh mysql-community-client-5.7.20-1.el6.x86_64

MySQL 之操作表结构

最后都变了- 提交于 2020-02-14 21:42:29
创建表 创建表的格式 CREATE TABLE 表名 ( 字段名1 字段类型1, 字段名2 字段类型2 ); 具体操作 创建student 表包含id,name,birthday 字段 CREATE TABLE student ( id INT, name VARCHAR(20), birthday DATE ); 查看表 查看某个数据库中的所有表 SHOW TABLES; 查看表结构 DESCRIBE 表名; 或 DESC 表名; DESCRIBE 的缩写为 DESC 查看创建表的 SQL 语句 SHOW CREATE TABLE 表名; 如: SHOW CREATE TABLE student; 查看创建student表时的SQL语句 快速创建一个表结构相同的表 CREATE TABLE 新表名 LIKE 旧表名; 如: CREATE TABLE new_tb LIKE old_tb; 快速创建一个表,表名为new_tb,结构与表old_tb的结构相同 删除表 直接删除表 DROP TABLE 表名; 判断表是否存在,如果存在则删除表 DROP TABLE IF EXISTS 表名; 修改表的结构 添加表列 —— ADD ALTER TABLE 表名 ADD 列名 类型; 如: ALTER TABLE student ADD id INT; 向student表中添加个列字段

Django---Django连接Mysql数据库

限于喜欢 提交于 2020-02-14 18:13:59
  前面介绍了Django平台的数据交互,这些数据都是在本地存放着,修改内容或者重新启动服务,数据就消失了,如果我们把数据存放在数据库中,不就保存了吗? Django数据库 Django中自带的也有数据库(sqlite3),自带的轻量级数据库sqlite3,已经完全够了,当然大家都很数据Mysql数据库,我们也可以通过Django连接Mysql数据库 连接Mysql数据库 在文件settings,py文件下中找到以下配置信息,该信息为连接默认数据库(sqlite3) # 连接数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } 如果想要连接Mysql数据库,我们可以进行修改成以下参数 # 配置MYsql数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', # 数据库名称, 'HOST': 'localhost', # 主机地址 'USER': 'root', # 数据库用户 'PASSWORD': '821006052', # 密码 'PORT': 3306 #

mysql权限回收测试

我与影子孤独终老i 提交于 2020-02-14 14:41:28
测试mysql 权限 准备三台虚拟机 203.66 是mysql-server 203.67 mysql-client 203.68 mysql-client 首先赋予全部库,全部权限 grant all privileges on . to 'root'@'%' identified by '123456'; 1、创建三个数据库 test2 chao yuanting 导入数据 2、给所以库全部权限 测试203.66 和 203.67 、203.68 是否可以删掉库,查询等。(是可以删除的) use test2;drop table manager_profile_photo; use test2;drop table manager_profile_photo; use test2;drop table manager_profile_photo; 3、针对203.67 对 chao 读写权限 test2 读权限 针对203.68 对 yuanting 读写权限 test2 读权限 grant select,insert on chao.* to 'root'@'192.168.203.67' identified by '123456'; grant select,insert,update,delete on yuanting.* to 'root'@'192.168