mysql5.0操作手册_MySQL 操作手册
修改用戶密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
查看數(shù)據(jù)庫(kù)編碼格式
查看數(shù)據(jù)庫(kù)編碼格式:?show variables like?'character_set_database';
查看數(shù)據(jù)表的編碼格式:show create table ;
查看 MySQL 數(shù)據(jù)列(column)的字符集:show full columns from ;
創(chuàng)建數(shù)據(jù)庫(kù)時(shí)指定數(shù)據(jù)庫(kù)的字符集:create database character set utf8;
alter database mydb DEFAULT CHARACTER SET utf8;
修改數(shù)據(jù)庫(kù)的編碼格式:alter database character set utf8;
修改數(shù)據(jù)表格編碼格式:alter table character set utf8;
修改表的默認(rèn)字符集和所有列的字符集:?ALTER TABLE?table_name?CONVERT TO?CHARACTER SET?character_name
修改字段編碼格式:alter table change character set utf8;
查看當(dāng)前安裝的 MySQL 所支持的字符集:show charset;
在 my.cnf 修改默認(rèn)的服務(wù)器字符集:character-set-server=utf8
改表結(jié)構(gòu)
1)添加字段:alter table table_name add column column_name varchar(64) AFTER `uid`?;?(在哪個(gè)字段后面添加)
2)刪除字段:alter table table_name drop column column_name;
3)修改字段類(lèi)型:
alter table 表名 modify column 字段名 類(lèi)型; ? ? ? ? 【修改列類(lèi)型】
alter table 表名 change 舊字段名 新字段名 類(lèi)型; 【修改列名和列類(lèi)型】
4)添加外鍵:
alter table users add constraint users_ibfk_1 FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`);
5)修改表的默認(rèn)字符集和所有列的字符集:
ALTER TABLE?table_name?CONVERT TO?CHARACTER SET?character_name
查看索引
mysql> show index fromtblname;
mysql> show keys from tblname;
添加索引
# 主鍵索引mysql> ALTER TABLE `table_name` ADD PRIMARY KEY ('column');
# 新增列,并設(shè)為主鍵,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 語(yǔ)句創(chuàng)建索引:
CREATE INDEX index_name ONtable_name (column_list);CREATE UNIQUE INDEX index_name ON table_name (column_list);
table_name、index_name和column_list具有與ALTER TABLE語(yǔ)句中相同的含義,另外,不能用CREATE INDEX語(yǔ)句創(chuàng)建PRIMARY KEY索引。
刪除索引
DROP INDEX index_name ONtalbe_name;ALTER TABLE table_name DROP INDEXindex_name;ALTER TABLE table_name DROP PRIMARY KEY;
其中,前兩條語(yǔ)句是等價(jià)的,刪除掉table_name中的索引index_name。
第3條語(yǔ)句只在刪除PRIMARY KEY索引時(shí)使用,因?yàn)橐粋€(gè)表只可能有一個(gè)PRIMARY KEY索引,因此不需要指定索引名。如果沒(méi)有創(chuàng)建PRIMARY KEY索引,但表具有一個(gè)或多個(gè)UNIQUE索引,則MySQL將刪除第一個(gè)UNIQUE索引。
修改索引
在MySQL中并沒(méi)有提供修改索引的直接指令,一般情況下,我們需要先刪除掉原索引,再根據(jù)需要?jiǎng)?chuàng)建一個(gè)同名的索引,從而變相地實(shí)現(xiàn)修改索引操作。
撤回?with grant option?權(quán)限
mysql> revoke grant option on *.* from 'user'@'localhost';
重命名表: rename table old_name to new_name;
獲取當(dāng)前日期時(shí)間:
> 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
當(dāng)插入數(shù)據(jù)時(shí),如出現(xiàn)錯(cuò)誤時(shí),如重復(fù)數(shù)據(jù),將不返回錯(cuò)誤,只以警告形式返回。所以使用ignore請(qǐng)確保語(yǔ)句本身沒(méi)有問(wèn)題,否則也會(huì)被忽略掉。
replace into
如果存在primary or unique相同的記錄,則先刪除掉,再插入新記錄(影響的行數(shù)為2)。如果沒(méi)有沖突,同 insert into 語(yǔ)句。
REPLACE INTO test(title,uid) VALUES ('1234657','1001');
修改字段順序
ALTER TABLE `tb_position` CHANGE `area` `area` VARCHAR(50) AFTER `city`;
總結(jié)
以上是生活随笔為你收集整理的mysql5.0操作手册_MySQL 操作手册的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: django 指定模型排除的字段
- 下一篇: python爬虫beautifulsou