熟悉MySQL基本命令
Ubutnu下安装MySQL
先更新一下源,修复依赖关系:
sudo apt-get install update
sudo apt-get install -f
安装MySQL:
sudo apt-get install mysql-server
sudo apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev
安装过程中,会提示你输入root账号的密码,需要重复确认。
快捷键ctrl+alt+t进入终端,键入:
注意:在 <...> 内输入你自己的信息,默认username为root。
mysql -u<username> -p<password>
至此我们就成功进入MySQL数据库。
mysqladmin相关命令
修改密码:
mysqladmin -u<username> -p<old password> password <new password>
判断服务是否启动:
第一种方式:
mysqladmin -u<username> -p<password> ping
>mysqld is alive
第二种方式:
netstat -ano | grep mysql
第三种方式:
ps -ef | grep mysql
查看数据库版本信息:
mysqladmin -u<username> -p<password> version
查看所有的全局变量:
mysqladmin -u<username> -p<password> variables
查看数据库状态信息:
mysqladmin -u<username> -p<password> status
查看所有连接的客户端:
mysqladmin -u<username> -p<password> processlist
杀掉某个连接的客户端:
mysqladmin -u<username> -p<password> kill <id>
创建数据库和删除数据库:
mysqladmin -u<username> -p<password> create <database>
mysqladmin -u<username> -p<password> drop <database>
关闭服务:
第一种方式:
mysqladmin -u<username> -p<password> shutdown
第二种方式:
service mysql stop
启动服务:
第一种方式:
cd /usr/bin
sudo ./mysqld_safe &
第二种方式:
启动 - service mysql start
重启 - service mysql restart
MySQL的CRUD操作(增Create、删Delete、查Retrieve、改Update)
连接特定ip和port的mysql数据库,以-h(主机IP)、-P(端口)、-u(用户名)、-p(密码) 参数加输入信息的形式:
mysql -h<host> -P<port> -u<username> -p<password>
查看、使用数据库:
SHOW DATABASES;
USE <database>;
显示正在使用的数据库:
SELECT DATABASE();
删除数据库:
DROP DATABASE <database>;
查看表、创建表:
SHOW TABLES;
CREATE TABLE <table_name>
(
<keyword> <keytype>,
......
);
其中的keyword自拟,而keytype选择MySQL内部定义的数据类型,查看更多MySQL字段类型。
检索:
#检索所有列
SELECT * FROM <table_name>;
#检索单个列或者多个列
SELECT <keyword1>, <keyword2>, ... FROM <table_name>;
限制检索结果:
1、检索不同值,忽略相同值,使用关键字 DISTINCT:
SELECT DISTINCT <keyword1>, <keyword2>, ... FROM <table_name>;
注意:不能部分使用DISTINCT,DISTINCT关键字作用于所有的列,不仅仅是跟在其后的那一列。例如你指定 SELECT DISTINCT work_id, test_id FROM example_table; 除非指定的两列完全相同,否则所有的行都会被检索出来。
2、限制检索结果的数量,使用 LIMIT (要显示的行数) OFFSET (偏移量):
SELECT * FROM <table_name> LIMIT 5 OFFSET 1;
3、排序检索结果,使用 ORDER BY 子句:
... ORDER BY <keyword1>, <keyword2>, ...;
多个排序条件,依次进行排序。先按keyword1排序,结果中keyword1都一致,再按照keyword2排序,然后......。
注意:通常,ORDER BY子句中使用的列将是为了显示而选择的列,但是,实际上并不一定要这样,用非检索的列排序数据是完全合法的。
4、检索结果呈现顺序 默认升序与降序(DESC):
... ORDER BY <keyword1> DESC, <keyword2>, ...;
关键字 DESC 只会应用到直接位于起前面的列名。
5、过滤数据,使用 WHERE 子句:
SELECT <keyword1>, <keyword2>, ... FROM <table_name1>, <table_name2>, ... WHERE <keyword> [=,<>,!=,<,!<,<=,>,!>,>=,BETWEEN,IS NULL] <value>;
6、组合过滤条件:
(1)AND操作符
... WHERE a = b AND c = d;
仅仅显示 a=b 和 c=d 都满足条件的检索项。
(2)OR操作符
... WHERE a = b OR c = d;
顺序判断,先判断 a = b,如果成立,显示出来,不需要判断 c = d;如果不成立,再判断 c = d,如果成立,显示出来,若果不成立,过滤丢弃。有其他条件,依次进行判断。
注意:
WHERE子句可以包含任意数目的AND和OR操作符。允许两者结合以进行复杂、高级的过滤。但是,AND的优先级比OR高,盲目组合可能会引起意想不到的错误,为了正确使用组合条件,不过分依赖默认求值顺序,尽量使用圆括号分隔!
(3)IN操作符
... WHERE a IN (b, c, d);
=> ... WHERE a = b OR a = c OR a = d;
(4)NOT操作符
... WHERE a NOT IN (b, c, d);
这里的NOT否定跟在其后的条件,在更复杂的子句中,使用NOT十分有用。
7、LIKE操作符
... WHERE a LIKE "test_%";
匹配字段a所有以“test_”开头的行。
通配符类型:
% - 匹配一段任意长度的字符串
_ - 匹配单个字符
[...] - 匹配指定的一个字符集(只有微软的Access和SQL Server支持集合)
[^...]或者[!...] - 否定集合,不匹配指定的一个字符集
网友评论