Mysql

ubuntu 安装 mysql

sudo apt update  # 更新 apt
sudo apt-get install mysql-server mysql-client  # 安装

mysql --verion  # 查看 mysql 版本
service mysql status  # 查看 mysql 状态

sudo systemctl status mysql.service  # 查看 mysql 状态
sudo systemctl stop mysql.service  # 停止服务
sudo systemctl start mysql.service  # 启动
sudo systemctl restart mysql.service  # 重启
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf  # 查看配置文件

mysql -uroot -p  # 登录 mysql

常用命令

SHOW DATABASES;            # 查看数据库列表
CREATE DATABASE blogdata;  # 创建一个名为 blogdata 的数据库
DROP DATABASE blogdata;    # 删除数据库
USE blogdata;              # 进入名为 blogdata 的数据库
SELECT DATABASE();         # 查看当前使用的数据库
SHOW TABLES;               # 显示表
DESCRIBE blogdata;         # 显示表结构
CREATE TABLE IF NOT EXISTS article (id INT(3) AUTO_INCREMENT NOT NULL PRIMARY KEY, name VARCHAR(300) DEFAULT('xxx'), created_time DATETIME) DEFAULT CHARSET uft8; # 如果表不存在创建表

ALTER TABLE article ADD(test char(10)) DEFAULT 'aaa';  # 表增加列 并设置默认值
ALTER TABLE article ALTER test SET DEFAULT 'system';   # 设置默认值
ALTER TABLE article ALTER test FROP DEFAULT;           # 删除默认值
ALTER TABLE article DROP COLUMN test;                  # 删除列
ALTER TABLE article ADD PRIMARY KEY(id);               # 设置主键
ALTER TABLE article DROP PRIMARY KEY;                  # 删除主键

INSERT INTO article VALUES(1,"test","2019-11-20 10:00:00");  # 插入数据

SELECT * FROM article WHERE id=1;            # 查询
SELECT COUNT(*) from article;                # 查询数量
SELECT * FROM article ORDER BY id LIMIT 0,2; # 查询通过id排序后的前2个数据

DELETE FROM article WHERE name='wenxue';     # 删除一条记录

UPDATE article SET name='wenxue2' WHERE name='wenxue';  # 修改一条记录

字段类型

1.INT[(M)] 型: 正常大小整数类型 2.DOUBLE[(M,D)] [ZEROFILL] 型: 正常大小(双精密)浮点数字类型 3.DATE 日期类型:支持的范围是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式来显示DATE值,但是允许你使用字符串或数字把值赋给DATE列 4.CHAR(M) 型:定长字符串类型,当存储时,总是是用空格填满右边到指定的长度 5.BLOB TEXT类型,最大长度为65535(2^16-1)个字符。 6.VARCHAR型:长字符串类型

CHAR 和 VARCHAR 的区别: char 最大长度是 255 个字符,varchar 最大长度是 65535 个字符。 char 是定长的,不足的部分会用隐藏空格填充,varchar 是不定长的。 char 查找效率会很高,varchar 查找效率会更低。