关于Mysql及常用命令

mysql服务的启动和停止

net stop mysql

net start mysql

登陆mysql

语法如下: mysql -u用户名 -p用户密码

键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:

mysql>

注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP

增加新用户

格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"

如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:

grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";

如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。

如果你不想user1有密码,可以再打一个命令将密码去掉。

grant select,insert,update,delete on mydb.* to user1@localhost identified by "";

操作数据库

登录到mysql中,然后在mysql的提示符下运行下列命令,每个命令以分号结束。

1、 显示数据库列表。

show databases;

缺省有两个数据库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。

2、 显示库中的数据表:

use mysql;

show tables;

3、 显示数据表的结构:

describe 表名;

4、 建库与删库:

create database 库名;

drop database 库名;

5、 建表:

use 库名;

create table 表名(字段列表);

drop table 表名;

6、 清空表中记录:

delete from 表名;

7、 显示表中的记录:

select * from 表名;

导出和导入数据

1. 导出数据:

mysqldump --opt test > mysql.test

即将数据库test数据库导出到mysql.test文件,后者是一个文本文件

如:mysqldump -u root -p123456 --databases dbname > mysql.dbname

就是把数据库dbname导出到文件mysql.dbname中。

2. 导入数据:

mysqlimport -u root -p123456 < mysql.dbname。

或 mysql -u user -p db < db.sql

3. 将文本数据导入数据库:

文本数据的字段数据之间用tab键隔开。

use test;

load data local infile "文件名" into table 表名;

1:使用SHOW语句找出在服务器上当前存在什么数据库:

mysql> SHOW DATABASES;

2:创建一个数据库MYSQLDATA

mysql> CREATE DATABASE MYSQLDATA;

3:选择你所创建的数据库

mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)

4:查看现在的数据库中存在什么表

mysql> SHOW TABLES;

5:创建一个数据库表

mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));

6:显示表的结构:

mysql> DESCRIBE MYTABLE;

7:往表中加入记录

mysql> insert into MYTABLE values ("hyq","M");

8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)

mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;

9:导入.sql文件命令(例如D:/mysql.sql)

mysql>use database;

mysql>source d:/mysql.sql;

10:删除表

mysql>drop TABLE MYTABLE;

11:清空表

mysql>delete from MYTABLE;

12:更新表中数据

mysql>update MYTABLE set sex="f" where name='hyq';

posted on 2006-01-10 16:21 happytian 阅读(6) 评论(0) 编辑 收藏 收藏至365Key

13:备份数据库

mysqldump -u root 库名>xxx.data

14:例2:连接到远程主机上的MYSQL

假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:

mysql -h110.110.110.110 -uroot -pabcd123

(注:u与root可以不用加空格,其它也一样)

=====================================================================

1:使用SHOW语句找出在服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
2:2、创建一个数据库MYSQLDATA
mysql> CREATE DATABASE MYSQLDATA;
3:选择你所创建的数据库
mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)
4:查看现在的数据库中存在什么表
mysql> SHOW TABLES;
5:创建一个数据库表
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:显示表的结构:
mysql> DESCRIBE MYTABLE;
7:往表中加入记录
mysql> insert into MYTABLE values ("hyq","M");
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
9:导入.sql文件命令(例如D:/mysql.sql)
mysql>use database;
mysql>source d:/mysql.sql;
10:删除表
mysql>drop TABLE MYTABLE;
11:清空表
mysql>delete from MYTABLE;

12:更新表中数据

mysql>update MYTABLE set sex="f" where name=hyq;

其它: 

  • show processlist;列出每一笔联机的信息。 
  • show variables;列出mysql的系统设定。 
  • show tables from db_name;列出db_name中所有数据表; 
  • show [full] columns from table_name;列出table_name中完整信息,如栏名、类型,包括字符集编码。 
  • show index from table_name; 列出table_name中所有的索引。 
  • show table status;;列出当前数据库中数据表的信息。 
  • show table status from db_name;;列出当前db_name中数据表的信息。 
  • alter table table_name engine innodb|myisam|memory ;更改表类型 
  • explain table_name / describe table_name ; 列出table_name完整信息,如栏名、类型。 
  • show create table table_name 显示当前表的建表语句 
  • alter table table_name add primary key (picid) ; 向表中增加一个主键 
  • alter table table_name add column userid int after picid 修改表结构增加一个新的字段 
  • alter table table_name character set gb2312 改变表的编码 
  • select user(); 显示当前用户。 
  • select password(’root’); 显示当前用户密码 
  • select now(); 显示当前日期 
  • flush privileges 在不重启的情况下刷新用户权限 
  • mysqld –default-character-set=gb2312 ;设置默认字符集为gb2312  

批量导入已经格式好的文本数据

首先要在mysql中创建对应的数据表,如可取表名为stu。格式好的文本数据放在一个txt文件中,每行包含一个记录,并且列的顺序必须和数据库表格的列次序相同,且各列之间用特定的分隔符分隔开。假如格式好的文本数据放在D盘下的stu.txt文件中,各列之间的分隔符为Tab,那么导入数据可以如此操作:

LOAD DATA LOCAL INFILE ‘D:\\stu.txt’INTO TABLE stu;   //stu(clu,clu,..,clu)

如果列之间的分隔符为空格,可以使用语句:

LOAD DATA LOCALINFILE‘D:\\stu.txt’INTO TABLE stu FIELDS TERMINATED BY ‘’;

其中FIELDS TERMINATEDBY就是用来指定列之间分隔符的。

导出到文本文件中

如想把数据表stu中的数据导出到文件stu_out.txt中,使用命令:

select * from stu into outfile‘d:\\stu_out.txt’ lines terminated by ‘\r\n’;

其中lines terminated by‘\r\n’表示指定各条记录之间用‘\r\n’分隔,当然也可以指定各列之间的分隔符,如:

select * from stu into outfile‘d:\\stu_out.txt’fields terminated by ',' lines terminated by‘\r\n’;

指定各列之间的分隔符为‘,’而行之间的分隔符为‘\r\n’。

PS:也可以通过命令mysqldump实现数据库的备份。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值