1 登录数据库的方式
- 命令:
mysql -u 用户名 -p -h 数据库 IP --port= 端口号 ( 一般是 58885 )
- 示例:
[root@localhost ~]# mysql -u58user -p -h10.58.120.231 --port=58888
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g
- 说明:不要在登录命令行中指定密码,防止应用帐号密码外泄。
2 查看当前用户有哪些数据库
- 命令:
show databases;
- 示例:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| dbwww58com_db1 |
| dbwww58com_db2 |
+--------------------+
3 rows in set (0.00 sec)
- 说明:查看权限内的库有哪些。
3 选择你要操作的数据库
- 命令:
use 数据库名 ;
- 示例:
mysql> use dbwww58com_db1
Database changed
- 说明:要操作某个库的数据对象,一般应先选中该数据库,如上面的 dbwww58com_db1 , 同时也可以用
select database()
命令来查看当前的库。'
mysql> select database();
+----------------+
| database() |
+----------------+
| dbwww58com_db1 |
+----------------+
1 row in set (0.00 sec)
4 查看指定数据库的所有数据表
- 命令:
show tables;
- 示例:
mysql> show tables;
+--------------------------+
| Tables_in_dbwww58com_db1 |
+--------------------------+
| t_table1 |
| t_table2 |
+--------------------------+
- 说明:查看当前要操作的数据库中的所有数据表。
5 查看表的字段信息
- 命令:
desc 表名
- 示例:
mysql> desc t_table1;
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(40) | NO | MUL | | |
| sex | enum('0','1') | NO | | 0 | |
+-------+------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
- 说明:查看表的字段信息。
6 查看表的创建信息(备注信息)
- 命令:
show create table 表名 \G
- 示例:
mysql> show create table t_table1\G
*************************** 1. row ***************************
Table: t_table1
Create Table: CREATE TABLE `t_table1` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(40) NOT NULL DEFAULT '',
`sex` enum('0','1') NOT NULL DEFAULT '0' COMMENT '0: 男 ,1 :女 ',
PRIMARY KEY (`id`),
KEY `idx_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
- 说明: 可以查看到表的创建信息, 索引,表类型,字符集,注释等。
7 查看当前库中的存储过程 (procedure)
- 命令:
show procedure status where Db=database()\G
- 示例:
mysql> show procedure status where Db=database()\G
*************************** 1. row ***************************
Db: dbwww58com_db1
Name: p_test
Type: PROCEDURE
Definer: root@localhost
Modified: 2012-07-11 13:48:23
Created: 2012-07-11 13:48:23
Security_type: DEFINER
Comment:
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: utf8_general_ci
1 row in set (0.00 sec)
- 说明: 当看当前数据库有哪些存储过程
8 查看指定存储过程的代码。
- 命令:
show create procedure 存储过程名字
- 示例:
mysql> show create procedure p_test\G
*************************** 1. row ***************************
Procedure: p_test
sql_mode:
Create Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `p_test`()
begin select "Just for test."; end
character_set_client: utf8
9 简单查看一个表中的几行数据,查询后加 limit 数字
mysql> select * from t_table1 limit 2;
+----+-------+-----+
| id | name | sex |
+----+-------+-----+
| 1 | Roger | |
| 2 | Kate | 0 |
+----+-------+-----+
10 创建库
create database dbname;
11 创建表
CREATE TABLE `table_name` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '字段备注信息',
`demand_id` varchar(20) NOT NULL,
PRIMARY KEY (`id`),
KEY `user_id` (`user_id`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT = '表备注信息';
12 修改表的备注信息
修改表的注释,代码如下:
ALTER TABLE `表名` COMMENT '备注内容';
13 修改字段的备注信息
ALTER TABLE `表名` MODIFY COLUMN `字段名` INT COMMENT '备注内容';
注意:字段的类型必须带上
14 mysql数据库导入导出
- 导出:
# 1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
# 2.导出一个表
mysqldump -u 用户名 -p 数据库名表名> 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
# 3.导出一个数据库结构
mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
- 导入:
# 使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:wcnc_db.sql
@ 晴天-2017-06-04 10:28:05