mysql 之 sql管理数据 一

本文详细介绍了MySQL数据库中的关键配置项,包括sql_mode环境变量的作用及设置方法、字符集和排列方式的管理和调整、数据库的基本操作指令以及如何查看可用的存储引擎。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、sql_mode

mysql数据库的中有一个环境变量sql_mode,定义了mysql应该支持的sql语法,数据校验等!

> 查看当前数据库使用的 sql_mode

mysql> select @@sql_mode;
+----------------------------------------------------------------+
| @@sql_mode                                                     |
+----------------------------------------------------------------+
| STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+----------------------------------------------------------------+

  > 通过 查看系统环境变量方式:

mysql> show variables like 'sql_mode%';
+---------------+---------------------------------------------------------------
-+
| Variable_name | Value
 |
+---------------+---------------------------------------------------------------
-+
| sql_mode      | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
 |
+---------------+---------------------------------------------------------------
-+

> 修改 当前会话 sql_mode

mysql> set sql_mode = 'traditional';
Query OK, 0 rows affected (0.00 sec)

> 修改为 全局性设置 - 需要有 super管理权限

mysql> set global sql_mode = 'traditional';
Query OK, 0 rows affected (0.00 sec)

> 查看 当前会话和全局性 sql_mode

select @@session.sql_mode;
select @@global.sql_mode;

2、字符集

     > 查看mysql 服务器的当前字符集 和 排列方式

mysql> show variables like 'character\_set\_%';
+--------------------------+--------+
| Variable_name            | Value  |
+--------------------------+--------+
| character_set_client     | latin1 |
| character_set_connection | latin1 |
| character_set_database   | latin1 |
| character_set_filesystem | binary |
| character_set_results    | latin1 |
| character_set_server     | latin1 |
| character_set_system     | utf8   |
+--------------------------+--------+
7 rows in set (0.00 sec)
mysql> show variables like 'collation\_%';
+----------------------+-------------------+
| Variable_name        | Value             |
+----------------------+-------------------+
| collation_connection | latin1_swedish_ci |
| collation_database   | latin1_swedish_ci |
| collation_server     | latin1_swedish_ci |
+----------------------+-------------------+
3 rows in set (0.00 sec)

> 创建 新的 库和表时,设置字符集和排列方式

mysql> create database 20170620_test character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.01 sec)

mysql> create table tt(
    -> id int primary key auto_increment,
    -> name varchar(20)
    -> ) character set utf8 collate utf8_general_ci;
Query OK, 0 rows affected (0.09 sec)

> 修改 某个数据库 和 某张表的 字符集

alter database mini default character set = gb2312; 
alter table pub_logs default character set = gb2312; 

3、数据库的 操作

    > 选中数据库  use db_name; 

    > 创建数据库  create database if not exists db_name;

                         create database if not exists db_name character set utf8 collate utf8_general_ci;

    > 删除数据库  drop database db_name;   -> 会删除 此数据库中所有的 东西,且不可恢复

    > 数据库的变更 

       alter database db_name character set utf8 collate utf8_general_ci;

4、查看 哪些存储引擎可供选用

mysql> show engines;
+--------------------+---------+------------------------------------------------
----------------+--------------+------+------------+
| Engine             | Support | Comment
                | Transactions | XA   | Savepoints |
+--------------------+---------+------------------------------------------------
----------------+--------------+------+------------+
| FEDERATED          | NO      | Federated MySQL storage engine
                | NULL         | NULL | NULL       |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables
                | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine
                | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to
 it disappears) | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine
                | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for tempor
ary tables      | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine
                | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and f
oreign keys     | YES          | YES  | YES        |
| PERFORMANCE_SCHEMA | YES     | Performance Schema
                | NO           | NO   | NO         |
+--------------------+---------+------------------------------------------------
----------------+--------------+------+------------+
9 rows in set (0.00 sec)

>  也 可以 通过 查询  information_schema.engines 来查看  -> mysql 5.1 以上 更高的 版本

mysql> select engine from information_schema.engines where transactions = 'yes';
+--------+
| engine |
+--------+
| InnoDB |
+--------+
1 row in set (0.00 sec)

 

转载于:https://my.oschina.net/u/1387400/blog/993722

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值