②
③
主键的选取:主键应该是作为该表内的N条记录彼此得以区分的唯一标识。比如:
不同的人(user),可能领取的是相同的任务(task_name),即task_name不具有唯一性,所以task_name不能作为该表的主键。
④ docker安装ubuntu后再安装mysql
(1)
docker pull ubuntu:18.04
在用docker容器run ubuntu的时候,想要安装python,遇到了bash: sudo: command not found 的错误。此时执行apt-get update 命令即可。
(2)
docker run -it -v /Users/caochangqing/Desktop/TinyWebServer-master:/TinyWebServer -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 ubuntu/mysql:latest /bin/bash
1)ubuntu安装mysql
sudo apt install mysql-server
2)
Ubuntu连接MySql报错“can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock'” :
Ubuntu14连接MySql报错“can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock'”
------------------------------------------------------------------
1. 安装MySQL
要在Windows或Mac上安装MySQL,首先从MySQL官方网站下载最新的MySQL Community Server版本:
MySQL :: Download MySQL Community Server
2. 运行MySQL
MySQL安装后会自动在后台运行。为了验证MySQL安装是否正确,我们需要通过mysql
这个命令行程序来连接MySQL服务器。
在命令提示符下输入mysql -u root -p
,然后输入口令,如果一切正确,就会连接到MySQL服务器,同时提示符变为mysql>
。
输入exit
退出MySQL命令行。注意,MySQL服务器仍在后台运行。
(1) MAC环境变量设置(.bash_profile和.zshrc)
.bash_profile和.zshrc都在用户目录下(~)。
.bash_profile需要使用source执行下,方可生效(可能需要手动创建.bash_profile,
如不存在,执行 vi .bash_profile 即可),
.zshrc修改环境变量,保存修改重启终端即可(需要安装oh-my-zsh自动创建.zshrc,直接手动创建.zshrc没有用)。
(2) 安装oh-my-zsh
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
(3)mac上安装了mysql后,发现在终端没法直接执行mysql命令:
终端执行 vim ~/.bash_profile, 输入export PATH=${PATH}:/usr/local/mysql/bin
终端执行 vim ~/.zshrc, 尾部输入source ~/.bash_profile
这样在重新启动终端mysql命令就可以直接执行了。
命令行程序mysql
实际上是MySQL客户端,真正的MySQL服务器程序是mysqld
,在后台运行。
3. 查询数据
其中,information_schema
、mysql
、performance_schema
和sys
是系统库,不要去改动它们。其他的是用户创建的数据库。
基本查询:
条件查询:
投影查询:
排序:
分页查询:
聚合查询:
多表查询:
连接查询:
4. 修改数据
插入数据:
更新数据:
删除数据:
5. 基本操作
6. mysql删除指定数据库内的所有表
SELECT CONCAT('DROP TABLE ', table_name,';') FROM information_schema.`TABLES` WHERE table_schema='dykj_jyx'; -- dykj_jyx 为数据库名称
删除指定数据表所有内容(表清空,但格式保留):truncate table + 表名
7. mysql修改已存在的表增加ID属性为auto_increment自动增长
例1
例2
create table taskinfo(
taskinfoid BIGINT NOT NULL AUTO_INCREMENT,
taskname varchar(100) NOT NULL,
user varchar(1000) NOT NULL,
taskdesc varchar(10000) NOT NULL,
tasktype varchar(100) NOT NULL,
taskstate int NOT NULL,
createtime TIMESTAMP NOT NULL,
progress varchar(1000) NOT NULL,
operation varchar(1000) NOT NULL,
PRIMARY KEY (taskinfoid)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
例3 比如taskdatatable已有主键,有36行数据,现在想设置自增主键
8. mysql表改名