当前位置:文档之家› mysql很实用的语句

mysql很实用的语句

1、检查字符集
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
2、MySQL字符集设置

? 系统变量:
– character_set_server:默认的内部操作字符集
– character_set_client:客户端来源数据使用的字符集
– character_set_connection:连接层字符集
– character_set_results:查询结果字符集
– character_set_database:当前选中数据库的默认字符集
– character_set_system:系统元数据(字段名等)字符集
– 还有以collation_开头的同上面对应的变量,用来描述字符序。

3、检测字符集问题的一些手段
? SHOW CHARACTER SET;
? SHOW COLLATION;
? SHOW VARIABLES LIKE ‘character%’;
? SHOW VARIABLES LIKE ‘collation%’;
? SQL函数HEX、LENGTH、CHAR_LENGTH
? SQL函数CHARSET、COLLATION

4、修改默认字符集
(1)最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值
如 default-character-set = utf8
character_set_server=utf8
修改完后,重启mysql服务。
(2)mysql命令
mysql>set character_set_client=utf8
mysql>set character_set_connection=utf8
mysql>set character_set_database=utf8
mysql>set character_set_results=utf8
mysql>set character_set_server=utf8
mysql>set collation_connection=utf8
mysql>set collation_database=utf8
mysql>set collation_server=utf8


5、显示服务器中的数据库
mysql>show databases;
6、创建一个数据库
mysql>create database mysqldata;
7、选择数据库
mysql>use mysqldata;
8、查看表
mysql>show tables;
9、创建数据表
mysql>create table mytable (name VARCHAR(20),sex CHAR(1));
10、显示表结构
mysql>describe mytable;
11、往表中加入记录
mysql>insert into mytable values("","");
12、用文本方式将数据装入数据库表中
mysql>load data local infile "D:/mysql.txt" into table mytable;
13、导入.sql文件命令
mysql>use database;
mysql>source d:/mysql.sql
14、删除表
mysql>drop table mytable;
15、清空表
mysql>delete from mytable;
16、更新表中数据
mysql>update mytable set sex="" where name=""
17、为用户赋权限
一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户
grant all on mydb.* to NewUserName@HostName identified by "password";
grant usage on *.* to NewUserName@HostName identified by "password";
grant select ,insert,update on mydb.* to NewUserName@HostName identified by "password"l
grant update,delete on mydb.TestTable to NewUserName@HostName identified by "password";

18、全局管理权限
FILE: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。
数据库/数据表/数据列权限:
ALTER: 修改已存在的数

据表(例如增加/删除列)和索引。
CREATE: 建立新的数据库或数据表。
DELETE: 删除表的记录。
DROP: 删除数据表或数据库。
INDEX: 建立或删除索引。
INSERT: 增加表的记录。
SELECT: 显示/搜索表的记录。
UPDATE: 修改表中已存在的记录。
特别的权限:
ALL: 允许做任何事(和root一样)。
USAGE: 只允许登录–其它什么也不允许做。






Mysqldump是MySQL自带的导出数据工具

MySQL 导出数据库在 运行--cmd--环境下。
root:MySQL数据库用户名
-p: 后跟MySQL数据库用户名密码
mydatabses: 数据库名
-h: 后跟远程数据库地址
加 -d为导出表结构不加为导出数据
MySQL 只导出数据库的所有数据结构:
导出本地的数据库表结构:
mysqldump -uroot -p123456 -d mydatabases > mysql.sql
导出远程机器(或服务器)的表结构:
mysqldump -uroot -p123456 -h192.168.0.1 -d mysqldatabases > mysql.sql
导出本地的某一数据库所有表结构:
mysqldump -uroot -p12345 mydatabases > mysql.sql
导出远程机器(或服务器)的某一数据库所有表结构和数据:
mysqldump -uroot -p123456 -h192.168.0.1 mysqldatabase> mysql.sql
导入数据:source E:\mysql.sql
mysqldump命令中带有一个 --where/-w 参数,它用来设定数据导出的条件,使用方式和SQL查询命令中中的where基本上相同,有了它,我们就可以从数据库中导出你需要的那部分数据了。
命令格式如下:
mysqldump -u用户名 -p密码 数据库名 表名 --where="筛选条件" > 导出文件路径
例子:

从meteo数据库的sdata表中导出sensorid=11 且 fieldid=0的数据到 /home/xyx/Temp.sql 这个文件中
mysqldump -uroot -p123456 meteo sdata --where=" sensorid=11 and fieldid=0" > /home/xyx/Temp.sql




相关主题
文本预览
相关文档 最新文档