mysql创建数据库

MySQL 数据定义语言(DDL)

房东的猫 提交于 2020-03-23 18:05:46
SQL 包含以下 4 部分: 1 数据定义语言(DDL):DROP、CREATE、ALTER 等语句。 2 数据操作语言(DML):INSERT(插入)、UPDATE(修改)、DELETE(删除)语句。 3 数据查询语言(DQL):SELECT 语句。 4 数据控制语言(DCL): GRANT、REVOKE、COMMIT、ROLLBACK 等语句。 MySQL之DDL(Data Definition Language): 数据定义语言:CREATE,ALERT,DROP等 DDL:操作数据库,表(CRUD) 1.操作数据库 (1)C(Create):创建数据库 CREATE DATABASE [IF NOT EXISTS] 数据库名 [[DEFAULT] CHARACTER SET 字符集名] [[DEFAULT] COLLATE 校对规则名]; eg. mysql> CREATE DATABASE IF NOT EXISTS test -> DEFAULT CHARACTER SET utf8 -> DEFAULT COLLATE utf8_general_ci; Query OK, 1 row affected, 1 warning (0.01 sec) (2)R(Retrieve):查询 SHOW DATABASES [LIKE '数据库名']; eg.查询全部 mysql>

为什么数据库读写分离可以提高性能

我与影子孤独终老i 提交于 2020-03-23 17:59:32
3 月,跳不动了?>>> 虽然知道处理大数据量时,数据库要做读写分离,但是为什么读写分离可以提高性能呢? 下面是搜来的一些解释,看看再说! 一 什么是读写分离 MySQL Proxy最强大的一项功能是实现“读写分离(Read/Write Splitting)”。基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中 的从数据库。 当然,主服务器也可以提供查询服务。使用读写分离最大的作用无非是环境服务器压力。可以看下这张图: 二 读写分离的好处 1.增加冗余 2.增加了机器的处理能力 3.对于读操作为主的应用,使用读写分离是最好的场景,因为可以确保写的服务器压力更小,而读又可以接受点时间上的延迟。 三 读写分离提高性能之原因 1.物理服务器增加,负荷增加 2.主从只负责各自的写和读,极大程度的缓解X锁和S锁争用 3.从库可配置myisam引擎,提升查询性能以及节约系统开销 4.从库同步主库的数据和主库直接写还是有区别的,通过主库发送来的binlog恢复数据,但是,最重要区别在于主库向从库发送binlog是异步的,从库恢复数据也是异步的 5.读写分离适用与读远大于写的场景,如果只有一台服务器,当select很多时,update和delete会被这些select访问中的数据堵塞,等待select结束,并发性能不高。

Mysql-windows安装

为君一笑 提交于 2020-03-23 17:14:06
1.mysql下载 Mysql-window下载 1.1 环境变量配置 1)首先在官网下载最新的mysql8.0.11数据库,解压到你需要放置的盘符最好不要有中文,然后新建MYSQL_HOME 2)参数为mysql解压后安装文件的bin文件路径如我的: 变量名:MYSQL_HOME 变量值:E:\tools\database\mysql\mysql8.0.11\mysql-8.0.11-winx64\bin 3)然后在Path变量开头添加%MYSQL_HOME%;然后确定保存即可 2.创建my.ini 在解压后的目录中,如:E:\tools\database\mysql\mysql8.0.11\mysql-8.0.11-winx64 创建my.ini文件,并创建数据目录。文件内容如下: [client] port=3306 [mysql] no-beep # default-character-set= [mysqld] port=3306 # mysql根目录 (修改点!) basedir=D:\\software\\mysql-8.0.11-winx64 # 放所有数据库的data目录 (修改点!) datadir=D:\\software\\mysql-8.0.11-winx64\\data # character-set-server=utf8mb4 #

MySql存储引擎介绍

半世苍凉 提交于 2020-03-23 13:01:28
MySQL5.5以后默认使用 InnoDB 存储引擎,其中InnoDB和BDB提供事务安全表,其它存储引擎都是非事务安全表。 若要修改默认引擎,可以修改配置文件中的default-storage-engine。可以通过:show variables like 'default_storage_engine';查看当前数据库到默认引擎。命令: show engines 和 show variables like 'have%' 可以列出当前数据库所支持到引擎。其中Value显示为disabled的记录表示数据库支持此引擎,而在数据库启动时被禁用。在MySQL5.1以后,INFORMATION_SCHEMA数据库中存在一个ENGINES的表,它提供的信息与show engines;语句完全一样,可以使用下面语句来查询哪些存储引擎支持事物处理:select engine from information_chema.engines where transactions = 'yes'; 可以通过engine关键字在创建或修改数据库时指定所使用到引擎。 主要存储引擎:MyISAM、InnoDB、MEMORY和MERGE介绍: 在创建表到时候通过 engine=... 或 type=... 来指定所要使用到引擎。 show table status from DBname 来查看指定表到引擎

Mysql 数据库几种引擎的区别比较

China☆狼群 提交于 2020-03-23 12:46:42
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySql的核心就是存储引擎。 存储引擎查看 MySQL给开发者提供了查询存储引擎的功能,我这里使用的是MySQL5.1,可以使用: SHOW ENGINES 命令来查看MySQL使用的引擎,命令的输出为(我用的Navicat Premium): 看到MySQL给用户提供了这么多存储引擎,包括处理事务安全表的引擎和出来了非事物安全表的引擎。 如果要想查看数据库默认使用哪个引擎,可以通过使用命令: SHOW VARIABLES LIKE 'storage_engine'; 来查看,查询结果为: 在MySQL中,不需要在整个服务器中使用同一种存储引擎,针对具体的要求,可以对每一个表使用不同的存储引擎。Support列的值表示某种引擎是否能使用:YES表示可以使用、NO表示不能使用、DEFAULT表示该引擎为当前默认的存储引擎 。下面来看一下其中几种常用的引擎。 ========================以上是转载的http://blog.csdn.net/zhangyuan19880606/article/details

理解MySQL——架构与概念

我的梦境 提交于 2020-03-23 12:10:40
写在前面:最早接触的MySQL是在三年前,那时候MySQL还是4.x版本,很多功能都不支持,比如,存储过程,视图,触发器,更别说分布式事务等复杂特性了。但从5.0(2005年10月)开始,MySQL渐渐步入企业级数据库的行列了;复制、集群、分区、分布式事务,这些企业级的特性,使得现在的MySQL,完全可以应用于企业级应用环境(很多互联网公司都用其作为数据库服务器,尽管节约成本是一个因素,但是没有强大功能作后盾,则是不可想象的)。虽然,MySQL还有很多不足,比如,复制、分区的支持都十分有限、查询优化仍需要改进,但是MySQL已经是一个足够好的DBMS了,更何况它是opensource的。这段时间没有事,出于好奇,略微的研究了一下MySQL,积累了一些资料,欲总结出来。这些资料打算分为两部分,上部主要讨论MySQL的优化,其中主要参考了《MySQL Manual》和《High Performance MySQL》,如果有时间,以后在下部分析一下MySQL的源码。如果你是MySQL高手,希望你不吝赐教;如果你是新手,希望对你有用。 第一章、MySQL架构与概念 1、MySQL的逻辑架构 最上面不是MySQL特有的,所有基于网络的C/S的网络应用程序都应该包括连接处理、认证、安全管理等。 中间层是MySQL的核心,包括查询解析、分析、优化和缓存等。同时它还提供跨存储引擎的功能

sqlalchemy union 联合查询

Deadly 提交于 2020-03-23 09:55:10
在最近的工作中遇到一个问题,要将两个字段相似的表里的数据统一起来展示在一个统计页面中。如果是单纯的展示数据那很简单,两个表查出来之后组合一下就完事了,但是有坑的地方就是分页和按照时间搜索,这两个功能决定了不可能单独查询两张表。在同事的建议下,使用了 union 的联合查询,最终完成这个功能。做一个简单的demo,记录下这个功能。 数据库和sqlalchemy安装请参考另一篇文章 sqlalchemy数据库查询小集合 定义数据表 定义 两张表,字段类型相同,但名称不同。 #coding:utf-8 from sqlalchemy import Column,CHAR,INTEGER from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker Base = declarative_base() class User(Base): __tablename__ = "user" id = Column(CHAR(20),primary_key = True) name = Column(CHAR(20)) age = Column(INTEGER) class Teacher(Base)

CentOS下编写shell脚本来监控MySQL主从复制的教程

拜拜、爱过 提交于 2020-03-23 09:14:37
这篇文章主要介绍了在CentOS系统下编写shell脚本来监控主从复制的教程,文中举了两个发现故障后再次执行复制命令的例子,需要的朋友可以参考下 目的:定时监控MySQL主从数据库是否同步,如果不同步,记录故障时间,并执行命令使主从恢复同步状态 1、创建脚本文件 vi /home/crontab/check_mysql_slave.sh #编辑,添加下面代码 #!/bin/sh # check_mysql_slave status ip=eth0 #网卡名称 mysql_binfile=/usr/local/mysql/bin/mysql mysql_user=root #MySQL数据库账号 mysql_pass=123456 #密码 mysql_sockfile=/tmp/mysql.sock datetime=`date +"%Y-%m-%d/%H:%M:%S"` #获取当前时间 mysql_slave_logfile=/home/logs/check_mysql_slave.log #日志文件路径,必须提前创建好 slave_ip=`ifconfig $ip|grep "inet addr" | awk -F[:" "]+ '{print $4}'` status=$($mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql

华为云3

跟風遠走 提交于 2020-03-23 09:14:03
[root@room9pc01 ~]# scp -r /var/ftp/local/ 139.9.60.12:/var/ftp/local/ [root@ecs-abc local]# cat /etc/yum.repos.d/local.repo [local] name=local baseurl=file:///var/ftp/local enabled=1 gpgcheck=0 [root@ecs-abc local]# ls mysql-community-client-5.7.17-1.el7.x86_64.rpm mysql-community-common-5.7.17-1.el7.x86_64.rpm mysql-community-devel-5.7.17-1.el7.x86_64.rpm mysql-community-embedded-5.7.17-1.el7.x86_64.rpm mysql-community-embedded-compat-5.7.17-1.el7.x86_64.rpm mysql-community-embedded-devel-5.7.17-1.el7.x86_64.rpm mysql-community-libs-5.7.17-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.17

MySQL主从修复

隐身守侯 提交于 2020-03-23 09:13:52
MySQL主从故障修复 测试库: 192.168.1.2 主 192.168.1.3 从 192.168.1.4 主 4又是2的从库 192.168.1.5 从 有人修改了192.168.1.2和192.168.1.3的数据库参数后,重启数据库。 忘记了192.168.1.4又是192.168.1.2的从库,导致192.168.1.2和192.168.1.4的主从断掉。 并且在192.168.1.2上创建了新库还原数据删除等操作,导致192.168.1.4提示错误。 模拟如下: 通过从库查看主从状态: mysql> show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 172.16.33.243 Master_User: master Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000006 Read_Master_Log_Pos: 303 Relay_Log_File: relay-log.000005 Relay_Log_Pos: 340 Relay_Master