1. 连接 MySQL
输入 mysql -u root -p 命令,回车,然后输入 MySQL 的密码(安装的时候手动设置的),再回车,就连接上 MySQL 了。
mysql -u root -p
2. mysql创建用户并且设置只读权限
-- 首先查看mysql中所有的用户 SELECT user,host FROM mysql.user; -- 查看指定用户的权限情况 SELECT * FROM mysql.user WHERE user='root' -- 创建一个用户 CREATE USER '用户名'@'%' IDENTIFIED BY '密码'; -- 给用户赋予只读权限 -- 数据库名.* (代表只读那个数据库.后的是表只读那个表*代表所有表) GRANT SELECT ON 数据库名.* TO '用户名'@'%'; -- 刷新权限 FLUSH PRIVILEGES;
3. 查看数据库
-- 查看当前安装的 MySQL 中有哪些数据库。
-- 刚安装 MySQL 时,默认有四个数据库,information_schema,mysql,perfomance_schema,sys 。
show databases;
4. 常用的字符集和排序规则:
字符集:
utf8mb4:支持最广泛的Unicode字符集,可存储任何国家的文字
utf8:是utf8mb4的子集,支持大部分Unicode字符,但不支持一些较新的字符
latin1:支持欧洲语言字符集,但不支持亚洲语言字符集
排序规则:
utf8mb4_general_ci:基于Unicode字符的一般排序规则,不区分大小写,但不区分重音符号和不同的字符变体
utf8mb4_unicode_ci:基于Unicode字符的排序规则,不区分大小写,但考虑重音符号和不同的字符变体
utf8mb4_bin:基于二进制的排序规则,区分大小写和字符编码,不考虑字符的语言或国家
当创建MySQL表时,可以选择使用哪种字符集和排序规则。例如,使用以下命令创建一个表,将其字符集设置为utf8mb4,排序规则设置为utf8mb4_unicode_ci:
CREATE TABLE my_table ( column1 VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, column2 VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci );
5. 创建/删除/选择数据库
方法一:navicat直接图像化创建
方法二:用语句
-- 创建数据库 CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; -- 删除数据库,如果存在的话 DROP DATABASE IF EXISTS RUNOOB; -- 选择数据库 USE database_name; -- 一开始就选择数据库 mysql -u your_username -p -D your_database
6. mysql的数据类型
类型 | 大小 | 范围(有符号) | 范围(无符号) | 用途 |
---|---|---|---|---|
TINYINT | 1 Bytes | (-128,127) | (0,255) | 小整数值 |
SMALLINT | 2 Bytes | (-32 768,32 767) | (0,65 535) | 大整数值 |
MEDIUMINT | 3 Bytes | (-8 388 608,8 388 607) | (0,16 777 215) | 大整数值 |
INT或INTEGER | 4 Bytes | (-2 147 483 648,2 147 483 647) | (0,4 294 967 295) | 大整数值 |
BIGINT | 8 Bytes | (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) | (0,18 446 744 073 709 551 615) | 极大整数值 |
FLOAT | 4 Bytes | (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) | 0,(1.175 494 351 E-38,3.402 823 466 E+38) | 单精度 浮点数值 |
DOUBLE | 8 Bytes | (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 双精度 浮点数值 |
DECIMAL | 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 | 依赖于M和D的值 | 依赖于M和D的值 | 小数值 |