mysql的命令操作

mysql的命令操作:

1.显示数据库列表。

show databases;

刚开始时才两个数据库:mysql 和 test。mysql 库很重要它里面有 MySQL 的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。

2.显示库中的数据表:

use mysql; //打开库,学过 FOXBASE 的一定不会陌生吧

show tables;

3.显示数据表的结构:

describe 表名;

4.建库:

create database 库名;

5.建表:

use 库名;

create table 表名 (字段设定列表);

6.删库和删表:

drop database 库名;

drop table 表名;

7.将表中记录清空:

delete from 表名;

8.显示表中的记录:

select * from 表名;

9.显示最后一个执行的语句所产生的错误、警告和通知:

show warnings;

10.只显示最后一个执行语句所产生的错误:

show errors;

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

实例:

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',’XX公司‘,'1976-10-10');

insert into teacher values('','jack',’XX公司‘,'1975-12-23');

注:在建表中:

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

2.将NAME设为长度为10的字符字段。

3.将ADDRESS设为长度50的字符字段,而且缺省值为深圳。varchar和char有什么区别呢,只有等以后的文章再说了。

4.将YEAR设为日期字段。

如果你在mysql提示符键入上面的命令也可以,但不方便调试。你可以将以上命令原样写入一个文本文件中假设为school.sql,然后复制到c:\下,并在DOS状态进入目录\mysql\bin,然后键入以下命令:

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

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

文本转数据库

1.文本数据应符合的格式:字段数据之间用tab键隔开,null值用\n来代替.

例:

3.rose 深圳二中 1976-10-10

4.mike 深圳一中 1975-12-23

2.数据传入命令 load data local infile “文件名” into table 表名;

注意:你最好将文件复制到\mysql\bin目录下,并且要先用use命令打开表所在的数据库

或者登录数据库前将路径转移(cd)到要导入文本所在路径。

备份数据库

(命令在DOS的\mysql\bin目录下执行)

mysqldump --opt school>school.bbb

注释:将数据库school备份到school.bbb文件,school.bbb是一个文本文件,文件名任取,打开看看你会有新发现。

自动备份 mysql 数据库的方法

1、先是建立批处理文件,将以下代码另存为.bat文件,文件名最好为英文。注意下面的路径,以笔者自己的数据库为例,数据库安装在D盘下mysql\mysql下,备份位置在F:\beifen,后面的代码是日期 8() 。

@echo off 9()

color 0D

MODE con: COLS=71 LINES=25

title mysql数据库自动备份脚本(任务计划)--脚本作者:http://www。***。com

set sou_dir="D:\mysql\Mysql\data"

set obj_dir=F:\beifen\%date:~0,10%

net stop mysql

md %obj_dir%

xcopy /e /y %sou_dir% %obj_dir%

net start mysql

@echo off&setlocal enabledelayedexpansion

call:D,30

echo. 30天前日期为:%D%

echo. 删除30天以前备份......

if exist F:\beifen\%D% rd /s /q F:\beifen\%D%

echo 自动备份完成,程序将自动退出......

还原导入

还原/导入数据库 10() ,导入过程,进入 mysql 数据库控制台,如 mysql -u root -p

mysql>use 数据库

然后使用 source 命令,后面参数为脚本文件(如这里用到的.sql)

mysql>source d:\dbname.sql

如果提示找不到文件,输完 source 后,可以用鼠标把文件直接拖进命令行窗口

启动跟踪

mysqld --debug

关闭服务器

mysqladmin -u root shutdown

启动服务

mysqld --console

远程访问

**编辑

1:将 localhost 改成 "%"

修改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改成"%"

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

mysql>FLUSH PRIVILEGES;

2:使用 myuser/mypassword 从任何主机连接到 mysql 服务器:

GRANT ALL PRIVILEGES ON . TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

使用myuser/mypassword从ip为192.168.225.166的主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON . TO 'myuser'@'192.168.225.166' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

3:泛授权

mysql -h localhost -u root

mysql>GRANT ALL PRIVILEGES ON . TO 'root'@'%' WITH GRANT OPTION; //赋予任何主机上以root身份访问数据的权限

mysql>FLUSH PRIVILEGES; 17()

你可能感兴趣的:(mysql的命令操作)