MYSQL.docx

上传人:b****1 文档编号:2699462 上传时间:2023-05-04 格式:DOCX 页数:33 大小:32.91KB
下载 相关 举报
MYSQL.docx_第1页
第1页 / 共33页
MYSQL.docx_第2页
第2页 / 共33页
MYSQL.docx_第3页
第3页 / 共33页
MYSQL.docx_第4页
第4页 / 共33页
MYSQL.docx_第5页
第5页 / 共33页
MYSQL.docx_第6页
第6页 / 共33页
MYSQL.docx_第7页
第7页 / 共33页
MYSQL.docx_第8页
第8页 / 共33页
MYSQL.docx_第9页
第9页 / 共33页
MYSQL.docx_第10页
第10页 / 共33页
MYSQL.docx_第11页
第11页 / 共33页
MYSQL.docx_第12页
第12页 / 共33页
MYSQL.docx_第13页
第13页 / 共33页
MYSQL.docx_第14页
第14页 / 共33页
MYSQL.docx_第15页
第15页 / 共33页
MYSQL.docx_第16页
第16页 / 共33页
MYSQL.docx_第17页
第17页 / 共33页
MYSQL.docx_第18页
第18页 / 共33页
MYSQL.docx_第19页
第19页 / 共33页
MYSQL.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MYSQL.docx

《MYSQL.docx》由会员分享,可在线阅读,更多相关《MYSQL.docx(33页珍藏版)》请在冰点文库上搜索。

MYSQL.docx

MYSQL

一、连接MYSQL。

格式:

mysql-h主机地址-u用户名-p用户密码

1、连接到本机上的MYSQL。

首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql-uroot-p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.

如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:

mysql>

2、连接到远程主机上的MYSQL。

假设远程主机的IP为:

110.110.110.110,用户名为root,密码为abcd123。

则键入以下命令:

mysql-h110.110.110.110-uroot-p123;(注:

u与root之间可以不用加空格,其它也一样)

3、退出MYSQL命令:

exit(回车)

二、修改密码。

格式:

mysqladmin-u用户名-p旧密码password新密码

1、给root加个密码ab12。

首先在DOS下进入目录mysql\bin,然后键入以下命令

mysqladmin-uroot-passwordab12

注:

因为开始时root没有密码,所以-p旧密码一项就可以省略了。

2、再将root的密码改为djg345。

mysqladmin-uroot-pab12passworddjg345

三、增加新用户。

(注意:

和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)

格式:

grantselecton数据库.*to用户名@登录主机identifiedby“密码”

1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。

首先用root用户连入MYSQL,然后键入以下命令:

grantselect,insert,update,deleteon*.*to[email=test1@”%]test1@”%[/email]”Identifiedby“abc”;

但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见2。

2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),

这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

grantselect,insert,update,deleteonmydb.*to[email=test2@localhost]test2@localhost[/email]identifiedby“abc”;

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

grantselect,insert,update,deleteonmydb.*to[email=test2@localhost]test2@localhost[/email]identifiedby“”;

下篇我是MYSQL中有关数据库方面的操作。

注意:

你必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束。

一、操作技巧

1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。

也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。

2、你可以使用光标上下键调出以前的命令。

二、显示命令

1、显示当前数据库服务器中的数据库列表:

mysql>SHOWDATABASES;

注意:

mysql库里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。

2、显示数据库中的数据表:

mysql>USE库名;

mysql>SHOWTABLES;

3、显示数据表的结构;

mysql>DESCRIBE表名;

4、建立数据库:

mysql>CREATEDATABASE库名;

5、建立数据表:

mysql>USE库名;

mysql>CREATETABLE表名(字段名VARCHAR(20),字段名CHAR

(1));

6、删除数据库:

mysql>DROPDATABASE库名;

7、删除数据表:

mysql>DROPTABLE表名;

8、将表中记录清空:

mysql>DELETEFROM表名;

9、显示表中的记录:

mysql>SELECT*FROM表名;

10、往表中插入记录:

mysql>INSERTINTO表名VALUES(”hyq”,”M”);

11、更新表中数据:

mysql->UPDATE表名SET字段名1=’a',字段名2=’b’WHERE字段名3=’c';

12、用文本方式将数据装入数据表中:

mysql>LOADDATALOCALINFILE“D:

/mysql.txt”INTOTABLE表名;

13、导入.sql文件命令:

mysql>USE数据库名;

mysql>SOURCEd:

/mysql.sql;

14、命令行修改root密码:

mysql>UPDATEmysql.userSETpassword=PASSWORD(’新密码’)WHEREUser=’root’;

mysql>FLUSHPRIVILEGES;

15、显示use的数据库名:

mysql>SELECTDATABASE();

16、显示当前的user:

mysql>SELECTUSER();

三、一个建库和建表以及插入数据的实例

dropdatabaseifexistsschool;//如果存在SCHOOL则删除

createdatabaseschool;//建立库SCHOOL

useschool;//打开库SCHOOL

createtableteacher//建立表TEACHER

idint(3)auto_incrementnotnullprimarykey,

namechar(10)notnull,

addressvarchar(50)default‘深圳’,

yeardate

);//建表结束

//以下为插入字段

insertintoteachervalues(”,’allen’,'大连一中’,'1976-10-10′);

insertintoteachervalues(”,’jack’,'大连二中’,'1975-12-23′);

如果你在mysql提示符键入上面的命令也可以,但不方便调试。

(1)你可以将以上命令原样写入一个文本文件中,假设为school.sql,然后复制到c:

\\下,并在DOS状态进入目录[url=file:

//\\mysql\\bin]\\mysql\\bin[/url],然后键入以下命令:

mysql-uroot-p密码

\\school.sql

如果成功,空出一行无任何显示;如有错误,会有提示。

(以上命令已经调试,你只要将//的注释去掉即可使用)。

(2)或者进入命令行后使用mysql>sourcec:

\\school.sql;也可以将school.sql文件导入数据库中。

四、将文本数据转到数据库中

1、文本数据应符合的格式:

字段数据之间用tab键隔开,null值用[url=file:

//\\n]\\n[/url]来代替.例:

3rose大连二中1976-10-10

4mike大连一中1975-12-23

假设你把这两组数据存为school.txt文件,放在c盘根目录下。

2、数据传入命令loaddatalocalinfile“c:

\\school.txt”intotable表名;

注意:

你最好将文件复制到[url=file:

//\\mysql\\bin]\\mysql\\bin[/url]目录下,并且要先用use命令打表所在的库。

五、备份数据库:

(命令在DOS的[url=file:

//\\mysql\\bin]\\mysql\\bin[/url]目录下执行)

1.导出整个数据库

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

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

mysqldump-uuser_name-p123456database_name>outfile_name.sql

2.导出一个表

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

mysqldump-uuser_name-pdatabase_nametable_name>outfile_name.sql

3.导出一个数据库结构

mysqldump-uuser_name-p-d–add-drop-tabledatabase_name>outfile_name.sql

-d没有数据–add-drop-table在每个create语句之前增加一个droptable

4.带语言参数导出

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

MYSQL常用命令

1.导出整个数据库

mysqldump-u用户名-p--default-character-set=latin1数据库名>导出的文件名(数据库默认编码是latin1)

mysqldump-uwcnc-psmgp_apps_wcnc>wcnc.sql

2.导出一个表

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

mysqldump-uwcnc-psmgp_apps_wcncusers>wcnc_users.sql

3.导出一个数据库结构

mysqldump-uwcnc-p-d–add-drop-tablesmgp_apps_wcnc>d:

wcnc_db.sql

-d没有数据–add-drop-table在每个create语句之前增加一个droptable

4.导入数据库

A:

常用source命令

进入mysql数据库控制台,

如mysql-uroot-p

mysql>use数据库

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

mysql>sourcewcnc_db.sql

B:

使用mysqldump命令

mysqldump-uusername-pdbname

C:

使用mysql命令

mysql-uusername-p-Ddbname

一、启动与退出

1、进入MySQL:

启动MySQLCommandLineClient(MySQL的DOS界面),直接输入安装时的密码即可。

此时的提示符是:

mysql>

2、退出MySQL:

quit或exit

二、库操作

1、、创建数据库

命令:

createdatabase<数据库名>

例如:

建立一个名为xhkdb的数据库

mysql>createdatabasexhkdb;

2、显示所有的数据库

命令:

showdatabases(注意:

最后有个s)

mysql>showdatabases;

3、删除数据库

命令:

dropdatabase<数据库名>

例如:

删除名为xhkdb的数据库

mysql>dropdatabasexhkdb;

4、连接数据库

命令:

use<数据库名>

例如:

如果xhkdb数据库存在,尝试存取它:

mysql>usexhkdb;

屏幕提示:

Databasechanged

5、查看当前使用的数据库

mysql>selectdatabase();

6、当前数据库包含的表信息:

mysql>showtables;(注意:

最后有个s)

三、表操作,操作之前应连接某个数据库

1、建表

命令:

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

mysql>createtableMyClass(

>idint(4)notnullprimarykeyauto_increment,

>namechar(20)notnull,

>sexint(4)notnulldefault'0',

>degreedouble(16,2));

2、获取表结构

命令:

desc表名,或者showcolumnsfrom表名

mysql>DESCRIBEMyClass

mysql>descMyClass;

mysql>showcolumnsfromMyClass;

3、删除表

命令:

droptable<表名>

例如:

删除表名为MyClass的表

mysql>droptableMyClass;

4、插入数据

命令:

insertinto<表名>[(<字段名1>[,..<字段名n>])]values(值1)[,(值n)]

例如,往表MyClass中插入二条记录,这二条记录表示:

编号为1的名为Tom的成绩为96.45,编号为2的名为Joan的成绩为82.99,编号为3的名为Wang的成绩为96.5.

mysql>insertintoMyClassvalues(1,'Tom',96.45),(2,'Joan',82.99),(2,'Wang',96.59);

5、查询表中的数据

1)、查询所有行

命令:

select<字段1,字段2,...>from<表名>where<表达式>

例如:

查看表MyClass中所有数据

mysql>select*fromMyClass;

2)、查询前几行数据

例如:

查看表MyClass中前2行数据

mysql>select*fromMyClassorderbyidlimit0,2;

或者:

mysql>select*fromMyClasslimit0,2;

6、删除表中数据

命令:

deletefrom表名where表达式

例如:

删除表MyClass中编号为1的记录

mysql>deletefromMyClasswhereid=1;

7、修改表中数据:

update表名set字段=新值,…where条件

mysql>updateMyClasssetname='Mary'whereid=1;

7、在表中增加字段:

命令:

altertable表名add字段类型其他;

例如:

在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0

mysql>altertableMyClassaddpasstestint(4)default'0'

8、更改表名:

命令:

renametable原表名to新表名;

例如:

在表MyClass名字更改为YouClass

mysql>renametableMyClasstoYouClass;

更新字段内容

update表名set字段名=新内容

update表名set字段名=replace(字段名,'旧内容','新内容');

文章前面加入4个空格

updatearticlesetcontent=concat('  ',content);

字段类型

1.INT[(M)]型:

正常大小整数类型

2.DOUBLE[(M,D)][ZEROFILL]型:

正常大小(双精密)浮点数字类型

3.DATE日期类型:

支持的范围是1000-01-01到9999-12-31。

MySQL以YYYY-MM-DD格式来显示DATE值,但是允许你使用字符串或数字把值赋给DATE列

4.CHAR(M)型:

定长字符串类型,当存储时,总是是用空格填满右边到指定的长度

5.BLOBTEXT类型,最大长度为65535(2^16-1)个字符。

6.VARCHAR型:

变长字符串类型

5.导入数据库表

  

(1)创建.sql文件

  

(2)先产生一个库如auction.c:

mysqlbin>mysqladmin-uroot-pcreatauction,会提示输入密码,然后成功创建。

  

(2)导入auction.sql文件

  c:

mysqlbin>mysql-uroot-pauction

  通过以上操作,就可以创建了一个数据库auction以及其中的一个表auction。

  6.修改数据库

  

(1)在mysql的表中增加字段:

  altertabledbnameaddcolumnuseridint(11)notnullprimarykeyauto_increment;

  这样,就在表dbname中添加了一个字段userid,类型为int(11)。

  7.mysql数据库的授权

  mysql>grantselect,insert,delete,create,drop

  on*.*(或test.*/user.*/..)

  to用户名@localhost

  identifiedby'密码';

  如:

新建一个用户帐号以便可以访问数据库,需要进行如下操作:

  mysql>grantusage

  ->ONtest.*

  ->TOtestuser@localhost;

  QueryOK,0rowsaffected(0.15sec)

  此后就创建了一个新用户叫:

testuser,这个用户只能从localhost连接到数据库并可以连接到test数据库。

下一步,我们必须指定testuser这个用户可以执行哪些操作:

  mysql>GRANTselect,insert,delete,update

  ->ONtest.*

  ->TOtestuser@localhost;

  QueryOK,0rowsaffected(0.00sec)

  此操作使testuser能够在每一个test数据库中的表执行SELECT,INSERT和DELETE以及UPDATE查询操作。

现在我们结束操作并退出MySQL客户程序:

  mysql>exit

  Bye9!

1:

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

mysql>SHOWDATABASES;

2:

2、创建一个数据库MYSQLDATA

mysql>CreateDATABASEMYSQLDATA;

3:

选择你所创建的数据库

mysql>USEMYSQLDATA;(按回车键出现Databasechanged时说明操作成功!

4:

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

mysql>SHOWTABLES;

5:

创建一个数据库表

mysql>CreateTABLEMYTABLE(nameVARCHAR(20),sexCHAR

(1));

6:

显示表的结构:

mysql>DESCRIBEMYTABLE;

7:

往表中加入记录

mysql>insertintoMYTABLEvalues("hyq","M");

8:

用文本方式将数据装入数据库表中(例如D:

/mysql.txt)

mysql>LOADDATALOCALINFILE"D:

/mysql.txt"INTOTABLEMYTABLE;

9:

导入.sql文件命令(例如D:

/mysql.sql)

mysql>usedatabase;

mysql>sourced:

/mysql.sql;

10:

删除表

mysql>dropTABLEMYTABLE;

11:

清空表

mysql>deletefromMYTABLE;

12:

更新表中数据

mysql>updateMYTABLEsetsex="f"wherename='hyq';

以下是无意中在网络看到的使用MySql的管理心得,

摘自:

在windows中MySql以服务形式存在,在使用前应确保此服务已经启动,未启动可用netstartmysql命令启动。

而Linux中启动时可用“/etc/rc.d/init.d/mysqldstart"命令,注意启动者应具有管理员权限。

刚安装好的MySql包含一个含空密码的root帐户和一个匿名帐户,这是很大的安全隐患,对于一些重要的应用我们应将安全性尽可能提高,在这里应把匿名帐户删除、root帐户设置密码,可用如下命令进行:

usemysql;

deletefromUserwhereUser="";

updateUsersetPassword=PASSWORD('newpassword')whereUser='root';

如果要对用户所用的登录终端进行限制,可以更新User表中相应用户的Host字段,在进行了以上更改后应重新启动数据库服务,此时登录时可用如下类似命令:

mysql-uroot-p;

mysql-uroot-pnewpassword;

mysqlmydb-uroot-p;

mysqlmydb-uroot-pnewpassword;

上面命令参数是常用参数的一部分,详细情况可参考文档。

此处的mydb是要登录的数据库的名称。

在进行开发和实际应用中,用户不应该只用root用户进行连接数据库,虽然使用root用户进行测试时很方便,但会给系统带来重大安全隐患,也不利于管理技术的提高。

我们给一个应用中使用的用户赋予最恰当的数据库权限。

如一个只进行数据插入的用户不应赋予其删除数据的权限。

MySql的用户管理是通过User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户。

其中GRANT的常用用法如下:

grantallonmydb.*toNewUserName@HostNameidentifiedby"password";

grantusageon*.*toNewU

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2