1.对MySQL客户端工具的使用总结
在MYSQL客户端中,可以source /xxx/yyy/zzz.sql 如果在SHELL命令行,可以mysql -uxxx -pyyy -hzzz < /.../.../test.sql进行执行
我们可以利用delimiter进行定义 在定义存储过程中需要使用delimiter
\g表示将\g之前的命令强制直接发送到SERVER端执行,相当于默认情况下的; \G表示\g并且以特定格式显示结果集,在实际开发中,当表的字段特别多的时候,这个机制很有用 mysql> select * from users\G *************************** 1. row *************************** id: 001 name: zhangsan Sex: birthday: NULL *************************** 2. row *************************** id: 002 name: lisi Sex: birthday: NULL 2 rows in set (0.00 sec)
mysql> system ls -ld /var/lib/mysql drwxr-xr-x 7 mysql mysql 4096 Sep 12 20:34 /var/lib/mysql
|
2.注意使用help COMMAND
mysql> help create index Name: ‘CREATE INDEX‘ Description: Syntax: CREATE [ONLINE|OFFLINE] [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [index_type] ON tbl_name (index_col_name,...) [index_option] ... index_col_name: col_name [(length)] [ASC | DESC] index_type: USING {BTREE | HASH} index_option: KEY_BLOCK_SIZE [=] value | index_type | WITH PARSER parser_name CREATE INDEX is mapped to an ALTER TABLE statement to create indexes. See [HELP ALTER TABLE]. CREATE INDEX cannot be used to create a PRIMARY KEY; use ALTER TABLE instead. For more information about indexes, see http://dev.mysql.com/doc/refman/5.1/en/mysql-indexes.html. URL: http://dev.mysql.com/doc/refman/5.1/en/create-index.html |
3.mysqladmin
mysqladmin是直接在SHELL命令行中来操作MYSQL数据库的一种方式。 mysqladmin -uxxx -pyyy -hzzz 当然,如果我们在my.cnf中已经定义好了客户端连接的user,host,password,那么我们可以 直接使用mysqladmin COMMAND 常用如下: 创建,删除数据库 mysqladmin create db_name mysqladmin drop db_name 查看服务器状态变量 mysqladmin extended-status 重读授权表 mysqladmin flush-privileges 和主从复制相关的命令 mysqladmin start-slave mysqladmin stop-slave 查看简短的服务器信息 [[email protected] ~]# mysqladmin statusUptime: 875 Threads: 1 Questions: 4 Slow queries: 0 Opens: 0 Flush tables: 1 Open tables: 6 Queries per second avg: 0.005 关闭服务器 mysqladmin shutdown |
4.MySQL体系
需要注意的是,MYSQL是单进程多线程的结构,每一个用户请求都会创建线程来响应。
实际上,关系型数据库有如下三个层次: 表示层(关系)--》逻辑层(存储引擎)--》物理层(文件) 我们在数据库中看到各种数据库对象,如表,视图等,最终还是要反映到文件上。而完成这一个过程的就是存储引擎。对于MYSQL,它是支持插件式的存储引擎的,比较常用的有两个,一个是MYISAM,一个是InnoDB。简单来说,MYISAM性能较好,但是不支持事务,对于查询较多的系统非常适合,比如数据仓库。而InnoDB是支持事务的,是一款工作非常类似于ORACLE的,比较适合在线事务系统。 |