在Linux中使用MySQL基础SQL语句及校验规则

卸载内置环境

查看是否存在MySQL

bash 复制代码
ps axj | grep mysql

关闭MySQL

bash 复制代码
systemctl stop mysqld

MySQL对应的安装文件

bash 复制代码
rpm -qa | grep mysql

批量卸载

bash 复制代码
rpm -qa | grep mysql | xargs yum -y remove

上传MySQL

bash 复制代码
rz 

查看本地yum源

bash 复制代码
ls /etc/yum.repos.d/ -a

安装MySQL

bash 复制代码
 rpm -ivh mysql57-community-release-el7.rpm

查看Linux版本

bash 复制代码
cat /etc/redhat-release

显示数据库show databases

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sys |

+--------------------+

4 rows in set (0.02 sec)

bash 复制代码
/var/lib/mysql

会多一个目录。

创建

cpp 复制代码
mysql> create database database1;

删除

bash 复制代码
mysql> drop database database1;

数据库的两个编码集

1.数据库编码集 数据库未来存储数据

2.数据库校验集 支持数据库,进行比较使用的编码,本质也是一种数据库中数据采用的编码方式。

数据库无论是对数据做任何操作,都必须保证操作和编码是一致的。

字符集和校验规则

查看系统默认字符集以及校验规则

cpp 复制代码
show variables like 'character_set_database';
show variables like 'collation_database';

查看数据库支持的字符集

bash 复制代码
show charset;

查看数据库支持的字符集校验规则

cpp 复制代码
show collation;
bash 复制代码
create database d1 charset=utf8 collate utf8_general_ci;

对其进行设置。

bash 复制代码
mysql> create database test1 collate utf8_general_ci;

mysql> create database test1 collate utf8_general_ci;

Query OK, 1 row affected, 1 warning (0.02 sec)

bash 复制代码
mysql> create database test2 collate utf8_bin;

mysql> create database test2 collate utf8_bin;

Query OK, 1 row affected, 1 warning (0.02 sec)

bash 复制代码
mysql> create table person(name varchar(20));

不区分大小写 utf8_general_ci

mysql> select * from person where name='a';
+------+
| name |
+------+
| a |
| A |
+------+

区分大小写 utf8_bin

mysql> use test2

Database changed

mysql> create table person(name varchar(20));

Query OK, 0 rows affected (0.06 sec)

mysql> insert into person (name) values ('a');

Query OK, 1 row affected (0.01 sec)

mysql> insert into person (name) values ('A');

Query OK, 1 row affected (0.02 sec)

mysql> select * from person where name='a';
+------+
| name |
+------+
| a |
+------+

显示

mysql> show tables;

+-----------------+

| Tables_in_test1 |

+-----------------+

| person |

+-----------------+

1 row in set (0.01 sec)

desc

mysql> desc person;

+-------+-------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+-------+-------------+------+-----+---------+-------+

| name | varchar(20) | YES | | NULL | |

+-------+-------------+------+-----+---------+-------+

1 row in set (0.01 sec)

select (DQL)

bash 复制代码
mysql> select * form person;

插入

bash 复制代码
mysql> insert into person (name) values ('D');

order by

bash 复制代码
mysql> select * form person order by name;
相关推荐
sulikey38 分钟前
Linux ext2文件系统结构
linux·操作系统·文件系统·linux文件系统·ext2·ext2文件系统
白菜欣1 小时前
Linux — 进程控制
android·linux·运维
JoneBB2 小时前
ABAP Webservice连接
运维·开发语言·数据库·学习
皮卡狮2 小时前
Linux开发专属工具
linux
未若君雅裁2 小时前
MySQL高可用与扩展-主从复制读写分离分库分表
java·数据库·mysql
weixin_421725262 小时前
Linux 编程语言全解析:C、C++、Python、Go、Rust 谁更强?
linux·python·go·c·编程语言
Tolalal2 小时前
Vmware Ubuntu虚拟机扩容
linux·运维·ubuntu
咚为3 小时前
比AccessLog更全面的原生Nginx 日志记录
运维·nginx·junit
我星期八休息3 小时前
Linux系统编程—基础IO
linux·运维·服务器·c语言·c++·人工智能·算法
Shingmc33 小时前
【Linux】数据链路层
linux·服务器·网络