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()