在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;
相关推荐
Java王小怪8 小时前
Docker环境Redis没挂载保存数据
运维·docker·容器
你住过的屋檐8 小时前
【Nginx】linux上安装nginx
linux·运维·nginx
宵时待雨9 小时前
linux笔记归纳17:传输层协议UDP
linux·笔记·udp
大模型码小白9 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
晓晓_za89866810 小时前
开源 GEO 优化源码二次开发:贴牌改造与业务模块扩展实践
java·运维·服务器·开发语言·性能优化·开源
SCandL15210 小时前
k8s service
linux·容器·kubernetes
云计算DevOps-韩老师10 小时前
【MySQL运维DBA】【SQL基础系列002篇】
运维·mysql·dba
云贝教育-郑老师11 小时前
【麒麟服务器系统交付:一个DBA的六年信创实战笔记】
服务器·笔记·dba
DBA大董11 小时前
TDengine3.0 DBA常用的运维命令和SQL2
运维·数据库·时序数据库·dba·tdengine
放风铃的兔子11 小时前
15 年 DBA 经验:MySQL 迁移到 KES,哪些东西真的不用改?
mysql