zoukankan      html  css  js  c++  java
  • MySQL 操作手册

    修改用户密码

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

    查看数据库编码格式

    1. 查看数据库编码格式: show variables like 'character_set_database';
    2. 查看数据表的编码格式:show create table <表名>;
    3. 查看 MySQL 数据列(column)的字符集:show full columns from <表名>;
    4. 创建数据库时指定数据库的字符集:create database <数据库名> character set utf8;
    5. alter database mydb DEFAULT CHARACTER SET utf8;
    6. 修改数据库的编码格式:alter database <数据库名> character set utf8;
    7. 修改数据表格编码格式:alter table <表名> character set utf8;
    8. 修改表的默认字符集和所有列的字符集: ALTER TABLE table_name CONVERT TO CHARACTER SET character_name
    9. 修改字段编码格式:alter table <表名> change <字段名> <字段名> <类型> character set utf8;
    10. 查看当前安装的 MySQL 所支持的字符集:show charset;
    11. 在 my.cnf 修改默认的服务器字符集:character-set-server=utf8

    改表结构

      1)添加字段:alter table table_name add column column_name varchar(64) AFTER `uid` ; (在哪个字段后面添加)

      2)删除字段:alter table table_name drop column column_name;

      3)修改字段类型:

        alter table 表名 modify column 字段名 类型;           【修改列类型】

        alter table 表名 change 旧字段名 新字段名 类型;   【修改列名和列类型】

      4)添加外键:

        alter table users add constraint users_ibfk_1 FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`);

      5)修改表的默认字符集和所有列的字符集:

        ALTER TABLE table_name CONVERT TO CHARACTER SET character_name

    查看索引

    mysql> show index from tblname; 
    mysql> show keys from tblname;

    添加索引

    # 主键索引
    mysql> ALTER  TABLE  `table_name`  ADD  PRIMARY  KEY ('column');

    # 新增列,并设为主键,first 放在首列
    mysql> ALTER TABLE table_name add column id int unsigned NOT NULL AUTO_INCREMENT primary key COMMENT '主键' FIRST; #
    唯一索引 mysql> ALTER TABLE `table_name` ADD UNIQUE index_name (`column`) # 普通索引 mysql> ALTER TABLE `table_name` ADD INDEX index_name ( `column`) # 全文索引 mysql> ALTER TABLE `table_name` ADD FULLTEXT (`column`) # 多列索引 mysql> ALTER TABLE `table_name` ADD INDEX index_name (`column1`, `column2`, `column3`)

    也可以使用 create index 语句创建索引:

    CREATE INDEX index_name ON table_name (column_list);
    CREATE UNIQUE INDEX index_name ON table_name (column_list);

    table_name、index_name和column_list具有与ALTER TABLE语句中相同的含义,另外,不能用CREATE INDEX语句创建PRIMARY KEY索引。

    删除索引

    DROP INDEX index_name ON talbe_name;
    ALTER TABLE table_name DROP INDEX index_name;
    ALTER TABLE table_name DROP PRIMARY KEY;

    其中,前两条语句是等价的,删除掉table_name中的索引index_name。

    第3条语句只在删除PRIMARY KEY索引时使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。如果没有创建PRIMARY KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。

    修改索引

    在MySQL中并没有提供修改索引的直接指令,一般情况下,我们需要先删除掉原索引,再根据需要创建一个同名的索引,从而变相地实现修改索引操作。

    撤回 with grant option 权限

    mysql> revoke grant option on *.* from 'user'@'localhost';

    重命名表: rename table old_name to new_name;

    获取当前日期时间

    > select current_date();
    +----------------+
    | current_date() |
    +----------------+
    | 2017-11-06     |
    +----------------+
    
    > select current_time();
    +----------------+
    | current_time() |
    +----------------+
    | 14:32:46       |
    +----------------+
    
    > select current_timestamp();
    +---------------------+
    | current_timestamp() |
    +---------------------+
    | 2017-11-06 14:32:53 |
    +---------------------+

    安装插件,如:

    mysql> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
    mysql> INSTALL PLUGIN AUDIT SONAME 'libaudit_plugin.so';

    卸载插件

    mysql> UNINSTALL PLUGIN plugin_name;

     查看表锁

    mysql> show open tables where in_use > 0;
    mysql> show table status;

     insert ignore into

    当插入数据时,如出现错误时,如重复数据,将不返回错误,只以警告形式返回。所以使用ignore请确保语句本身没有问题,否则也会被忽略掉。

    replace into

    如果存在primary or unique相同的记录,则先删除掉,再插入新记录(影响的行数为2)。如果没有冲突,同 insert into 语句。

    REPLACE INTO test(title,uid) VALUES ('1234657','1001');

    修改字段顺序

    ALTER TABLE `tb_position` CHANGE `area` `area` VARCHAR(50) AFTER `city`;
  • 相关阅读:
    液晶显示器分辨设置,显示器分辨率设置……
    如何显示语言栏
    查看一键Ghost的备份文件
    百度空间的变迁
    CentOS U盘安装
    Linux服务器系统选择
    博客一夜回到解放前
    spark常见的transformation和action算子
    二分查找
    9:两个栈实现一个队列
  • 原文地址:https://www.cnblogs.com/waynechou/p/7656474.html
Copyright © 2011-2022 走看看