mysql使用教程指南Word格式.docx
《mysql使用教程指南Word格式.docx》由会员分享,可在线阅读,更多相关《mysql使用教程指南Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
3退出mysql命令:
exit回车)
二、修改密码。
mysqladmin-u用户名-p旧密码password新密码
1例1给root加个密码ab12首先在DOS下进入目录mysqlbin然后键入以下命令
mysqladmin-urootpasswordab12
注:
因为开始时root没有密码,所以-p旧密码一项就可以省略了
2例2再将root密码改为djg345
mysqladmin-uroot-pab12passworddjg345
另一种方法:
shell>
mysql-uroot-p
mysql>
SETPASSWORDFORroot=PASSWORD"
root"
;
三、增加新用户。
注意:
和上面不同,下面的因为是mysql环境中的命令,所以后面都带
一个分号作为命令结束符)
grantselecton数据库.*to用户名@登录主机identifiby"
密码"
例1增加一个用户test1密码为abc让他可以在任何主机上登录,并对所有数据库有
查询、拔出、修改、删除的权限。
首先用以root用户连入mysql然后键入以下命
令:
grantselect,insert,update,deleton*.*totest1@"
%"
Identified
bi"
abc"
但例1增加的用户是十分危险的想如某个人知道test1密码,那么他就可以在
internet上的任何一台上登录你mysql数据库并对你数据可以为所欲为了
解决方法见例2
例2增加一个用户test2密码为abc,让其只可以在localhost上登录,并可以对数据库
mydb进行查询、拔出、修改、删除的操作(localhost指本地主机,即mysql数据
库所在那台主机)这样用户即使用知道test2密码,也无法从internet上直
接访问数据库,只能通过mysql主机上的web页来访问了
grantselect,insert,update,deletonmydb.*totest2@localhost
identifiby"
如果你不想test2有密码,可以再打一个命令将密码消掉。
"
有关数据库方面的操作。
必需首先登录到mysql中,以下操作都是mysql提
示符下进行的而且每个命令以分号结束。
一、操作技巧
1如果你打命令时,回车后发现忘记加分号,无须重打一遍命令,只要打个分号回
车就可以了也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束
标志就OK
2可以使用光标上下键调出以前的命令。
但以前我用过的一个mysql旧版本不支持。
现在用的mysql--beta-win
二、显示命令
1显示数据库列表。
showdatabases;
刚开始时才两个数据库:
mysql和testmysql库很重要它里面有mysql系统信息,
改密码和新增用户,实际上就是用这个库进行操作。
2显示库中的数据表:
usemysql打开库,学过FOXBASE一定不会陌生吧
showtables;
3显示数据表的结构:
describ表名;
4建库:
creatdatabas库名;
5建表:
use库名;
creattabl表名(字段设定列表)
6删库和删表:
dropdatabas库名;
droptabl表名;
7将表中记录清空:
deletfrom表名;
8显示表中的记录:
select*from表名;
三、一个建库和建表以及插入数据的实例
dropdatabasifexistschool;
1976-10-101975-12-231976-10-101975-12-23.
或exit退出mysql后mysql<
后记:
其实mysql对数据库的操作与其它SQL类数据库大同小异,您最好找本将SQL书看
看。
这里只介绍一些基本的其实我也就只懂这些了呵呵。
最好的mysql教程还是"
晏子"
译的"
mysql中文参考手册"
不只免费,每个相关都有
下载,而且它最权威的可惜不象"
PHP4中文手册"
那样是chm格式,查找函数命令的
时候不太方便。
3.打开数据库:
usdbname
显示所有数据库:
显示数据库mysql中所有的表:
先usmysql然后showtables;
显示表的列信息:
describuser;
显示表mysql数据库中user表的信息)
4.创立一个可以从任何地方连接服务器的一个完全的超级用户,但是必需使用一个口令someth做这个
GRANTALLPRIVILEGESON*.*TOmonty@localhostIDENTIFIEDBY'
something'
WITHGRANTOPTION;
GRANTALLPRIVILEGESON*.*TOmonty@"
IDENTIFIEDBY'
5.删除授权:
REVOKEALLPRIVILEGESON*.*FROMroot@"
USEmysql;
DELETEFROMuserWHEREUser="
andHost="
FLUSHPRIVILEGES;
6.创立一个用户custom特定客户端登录,可访问特定数据库bankaccount
GRANTSELECT,INSERT,UPDATE,DELETE,CREATE,DROPONbankaccount.*
7.重命名表:
ALTERTABLEt1RENAMEt2;
为了改变列a从INTEGER改为TINYINTNOTNULL名字一样)
并且改变列b从CHAR10改为CHAR20同时重命名它从b改为c:
ALTERTABLEt2MODIFYaTINYINTNOTNULL,CHANGEbcCHAR20;
增加一个新TIMESTAMP列,名为d
ALTERTABLEt2ADDdTIMESTAMP;
列d上增加一个索引,并且使列a为主键:
ALTERTABLEt2ADDINDEXd,ADDPRIMARYKEYa;
删除列c
ALTERTABLEt2DROPCOLUMNc;
增加一个新的AUTO_INCREMENT整数列,命名为c
ALTERTABLEt2ADDcINTUNSIGNEDNOTNULLAUTO_INCREMENT,ADDINDEXc;
注意,索引了c因为AUTO_INCREMENT柱必须被索引,并且另外我声明c为NOTNULL
因为索引了列不能是NULL
8.删除记录:
DELETEFROMt1WHEREC>
10;
6.改变某几行:
UPDATEt1SETuser=weiqiong,password=weiqiong;
7.使用name列的头10个字符创建一个索引:
CREATEINDEXpart_of_namONcustomname10;
数据导入问题byseseandZjtv
大家一定使用过phpmyadmin里面的数据库导入,导出功能,非常方便。
但是实际应用中,发现如下几个问题:
1数据库超过一定尺寸,比方6M这时使用导出一般没问题,可以正确的保管到本机硬盘上面,但是导入则不行!
原因是一般的里面临时文件/上传文件的大小限制为2M而phpmyadmin使用了上传的方式,造成失败。
2导出到硬盘的.SQL文件在导回时,经常呈现由于某些单引号的问题引起失败,造成导入失败,只能用mysql等应用程序导入了
数据库已经超过10M,所以必需解决这个问题。
思路:
导出:
用phpmyadmin保管数据库/表格结构,用脚本读取数据库内容并保存到文件里面!
导入:
用phpmyadmin恢复数据库/表格结构,用脚本读取文件,然后保管到库里面!
导出顺序如下:
调用方法为****.phptable=tablename
这个简单的顺序目前一次保存一个表格!
每行为一个字段的数据!
if$table=="
exit;
mysql_connect"
localhost"
"
name"
password"
mysql_select_db"
database"
$result=mysql_queri"
select*from$table"
ifmysql_num_row$result<
=0exit;
echo"
开始转换数据到文本...
$handl=fopen"
$"
w"
$numfield=mysql_num_field$result;
fput$handle,$numfields."
\r\n"
for$k=0;
$k
{
$msg=mysql_fetch_row$result;
for$i=0;
$i<
$numfields;
$i++
$msg[$i]=str_replac"
&
php2000mysqlreturn&
$msg[$i];
\n"
fput$handle,$msg[$i]."
}
fput$handle,"
fclose$handl;
ok"
>
导入的顺序如下:
用法同上面!
$messag=file"
echo$numfield=chop$message[0];
for$k=1;
$value="
for$i=$k;
$k+$numfields-1;
$tmp=str_replac"
chop$message[$i];
$valu.="
'
.addslash$tmp."
chop$message[$k+$numfields-1];
.$tmp."
$queri="
insertinto$tablvalu"
.$value."
echomysql_error;
mysql_queri$queri;
echo$k."
删除列cALTERTABLEt2DROPCOLUMNc;
原因是一般的里面临时文件/上传文件的大小限制为2M而