整理的mysql基础操做命令

mysql基础命令操做mysql

一、链接mysqlsql

mysql -u username(root) -p数据库

输入密码,链接mysqlide

二、建立数据库url

create database yiqing;spa

查看是否建立成功命令行

show databases;调试

三、在数据库中建表ip

use yiqing;(切换到要建表的数据库)rem

create tablename (id varchar(20) NOT NULL,name varchar(10) NOT NULL);

增长表字段

alter table tablename add newcol varchar

如 alter table ship add tel varcha(11);

四、增长用户

grant 权限(select insert update ) on 数据库.* to 用户名@登陆主机 identified by “密码”;


4.一、增长一个用户test1密码为abc,让他能够在任何主机上登陆,并对全部数据库有查询、插入、修改、删除的权限。

grant select,insert,update,delete on *.* to test1@”%” Identified by “abc”;

4.二、增长一个用户test2密码为abc,让他只能够在localhost上登陆,并能够对数据库mydb进行查询、插入、修改、删除的操做

grant select,insert,update,delete on mydb.* to test2@localhost identified by “abc”;


五、建立数据库  create database <数据库名>


5.1  创建一个名为yihua的数据库

create database yihua;

5.2  建立数据库并分配用户

create database yihua;

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON yihua.* TO yihua@localhost IDENTIFIED BY '密码';

    SET PASSWORD FOR 'yihua'@'localhost' = OLD_PASSWORD('密码');

依次执行3个命令完成数据库建立。注意:中文 “密码”和“数据库”是户本身须要设置的。


六、 删除数据库  drop database <数据库名>

6.1 删除一个已经肯定存在的数据库

mysql> drop database drop_database;

6.2 删除一个不肯定存在的数据库

  mysql> drop database drop_database;

  ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist

     //发生错误,不能删除'drop_database'数据库,该数据库不存在。

  mysql> drop database if exists drop_database;

  Query OK, 0 rows affected, 1 warning (0.00 sec)//产生一个警告说明此数据库不存在

  mysql> create database drop_database;

  Query OK, 1 row affected (0.00 sec)

  mysql> drop database if exists drop_database;//if exists 判断数据库是否存在,不存在也不产生错误

  Query OK, 0 rows affected (0.00 sec)

七、建立表

create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);


mysql> create table MyClass(

> id int(4) not null primary key auto_increment,

> name char(20) not null,

> sex int(4) not null default '0',

> degree double(16,2));


八、删除表 drop table <表名>

删除表名为 MyClass 的表

  mysql> drop table MyClass;


DROP TABLE用于取消一个或多个表。您必须有每一个表的DROP权限。全部的表数据和表定义会被取消,因此使用本语句要当心!


注意:对于一个带分区的表,DROP TABLE会永久性地取消表定义,取消各分区,并取消储存在这些分区中的全部数据。DROP TABLE还会取消与被取消的表有关联的分区定义(.par)文件。


对与不存在的表,使用IF EXISTS用于防止错误发生。当使用IF EXISTS时,对于每一个不存在的表,会生成一个NOTE。


九、插入表数据  insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]


例如:往表 MyClass中插入二条记录, 这二条记录表示:编号为1的名为Tom的成绩为96.45, 编号为2 的名为Joan 的成绩为82.99, 编号为3 的名为Wang 的成绩为96.5。

mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);


注意:insert into每次只能向表中插入一条记录。


十、备份数据库

命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目录下执行


1.导出整个数据库

导出文件默认是存在mysql\bin目录下

   mysqldump -u 用户名 -p 数据库名 > 导出的文件名

   mysqldump -u user_name -p123456 database_name > outfile_name.sql


2.导出一个表

   mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名

   mysqldump -u user_name -p database_name table_name > outfile_name.sql


3.导出一个数据库结构

   mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql

   -d 没有数据 –add-drop-table 在每一个create语句以前增长一个drop table


4.带语言参数导出

   mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt database_name > outfile_name.sql


例如,将aaa库备份到文件back_aaa中:

  [root@test1 root]# cd /home/data/mysql

  [root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa


十一、实例

11.1

drop database if exists school; //若是存在SCHOOL则删除

create database school; //创建库SCHOOL

use school; //打开库SCHOOL

create table teacher //创建表TEACHER

(

   id int(3) auto_increment not null primary key,

   name char(10) not null,

   address varchar(50) default ''深圳'',

   year date

); //建表结束


//如下为插入字段

insert into teacher values('''',''glchengang'',''深圳一中'',''1976-10-10'');

insert into teacher values('''',''jack'',''深圳一中'',''1975-12-23'');


注:在建表中

一、将ID设为长度为3的数字字段:int(3);并让它每一个记录自动加一:auto_increment;并不能为空:not null;并且让他成为主字段primary key。


二、将NAME设为长度为10的字符字段


三、将ADDRESS设为长度50的字符字段,并且缺省值为深圳。


四、将YEAR设为日期字段。


11.2

drop database if exists school; //若是存在SCHOOL则删除

create database school; //创建库SCHOOL

use school; //打开库SCHOOL

create table teacher //创建表TEACHER

(

   id int(3) auto_increment not null primary key,

   name char(10) not null,

   address varchar(50) default ‘深圳’,

   year date

); //建表结束


//如下为插入字段

insert into teacher values(”,’allen’,'大连一中’,'1976-10-10′);

insert into teacher values(”,’jack’,'大连二中’,'1975-12-23′);


若是你在mysql提示符键入上面的命令也能够,但不方便调试。

一、你能够将以上命令原样写入一个文本文件中,假设为school.sql,而后复制到c:\\下,并在DOS状态进入目录[url=file://\\mysql\\bin]\\mysql\\bin[/url],而后键入如下命令:

   mysql -uroot -p密码 < c:\\school.sql

若是成功,空出一行无任何显示;若有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉便可使用)。


二、或者进入命令行后使用 mysql> source c:\\school.sql; 也能够将school.sql文件导入数据库中。

相关文章
相关标签/搜索