八设置指南,Mysql命令大全

   一、安装mysql yum源

1、连接Mysql

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

一、连接受本机上的MYSQL。
首先展开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root
-p,回车后提示您输密码.注意用户名前能够有空格也可以没有空格,可是密码前必须未有空格,不然让您重新输入密码。

若果刚安装好MYSQL,一流用户root是没有密码的,故直接回车就能够进入到MYSQL中了,MYSQL的提醒符是:
mysql>

二、连接到长途主机上的MYSQL。假定远程主机的IP为:1十.110.1拾.1十,用户名称叫root,密码为abcd12叁。则键入以下命令:
    mysql -h110.1拾.1十.1拾 -u root -p
123;(注:u与root之间能够毫不加空格,别的也1律)

3、退出MYSQL命令: exit (回车)

 

 

1、连接Mysql

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

一、连接受本机上的MYSQL。
率先展开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root
-p,回车后提示您输密码.注意用户名前能够有空格也得以未有空格,不过密码前必须未有空格,不然让你再次输入密码。

若果刚安装好MYSQL,一级用户root是未曾密码的,故直接回车就能够进入到MYSQL中了,MYSQL的升迁符是:
mysql>

贰、连接到长途主机上的MYSQL。倘诺远程主机的IP为:1十.1十.110.110,用户名叫root,密码为abcd1二叁。则键入以下命令:
    mysql -h110.1拾.1十.1拾 -u root -p
1二三;(注:u与root之间可以不要加空格,别的也一样)

3、退出MYSQL命令: exit (回车)

 

从官网下载mysql最新的yum源的rpm安装包

2、修改密码

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

1、给root加个密码ab1二。
率先在DOS下进入目录mysql\bin,然后键入以下命令
    mysqladmin -u root -password ab12
注:因为初叶时root未有密码,所以-p旧密码1项就足以总结了。

二、再将root的密码改为djg3四伍。
    mysqladmin -u root -p ab12 password djg345

1、连接Mysql

格式: mysql -h主机地址 -u用户名 -p用户密码
①、连接受本机上的MYSQL。
首先张开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root
-p,回车后提醒您输密码.注意用户名前可以有空格也得以未有空格,不过密码前必须未有空格,不然让您再次输入密码。
万一刚安装好MYSQL,顶尖用户root是不曾密码的,故间接回车就能够进入到MYSQL中了,MYSQL的唤起符是:
mysql>
二、连接到长途主机上的MYSQL。假如远程主机的IP为:110.1十.1十.1拾,用户名叫root,密码为abcd1二叁。则键入以下命令:
    mysql -h110.110.1十.110 -u root -p
1二三;(注:u与root之间可以毫不加空格,其余也同等)
3、退出MYSQL命令: exit (回车)

 

二、修改密码

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

壹、给root加个密码ab12。
首先在DOS下进入目录mysql\bin,然后键入以下命令
    mysqladmin -u root -password ab12
注:因为开头时root未有密码,所以-p旧密码一项就足以总结了。

2、再将root的密码改为djg3四伍。
    mysqladmin -u root -p ab12 password djg345

997755.com澳门葡京 1

叁、扩充新用户

注意:和方面差别,下边包车型地铁因为是MYSQL情况中的命令,所未来边都带3个子公司作为命令结束符

格式:grant select on 数据库.* to 用户名@登6主机 identified by
“密码”

一、伸张三个用户test壹密码为abc,让他得以在其余主机上登六,并对负有数据库有询问、插入、修改、删除的权位。首先用root用户连入MYSQL,然后键入以下命令:
    grant select,insert,update,delete on *.* to
[email=test1@”%]test1@”%[/email]” Identified by “abc”;

但扩张的用户是老大险象环生的,你想如某些人知情test1的密码,那么她就能够在internet上的别的壹台Computer上登六你的mysql数据库并对你的数码可感到所欲为了,消除办法见二。

2、扩展一个用户test贰密码为abc,让她只好够在localhost上登入,并得以对数据库mydb实行询问、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),那样用户即选拔知道test二的密码,他也无力回天从internet上一贯访问数据库,只可以通过MYSQL主机上的web页来访问了。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by
“abc”;

八设置指南,Mysql命令大全。若是您不想test二有密码,能够再打3个下令将密码消掉。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by “”;

 

二、修改密码

格式:mysqladmin -u用户名 -p旧密码 password 新密码
一、给root加个密码ab1二。
首先在DOS下进入目录mysql\bin,然后键入以下命令     mysqladmin -u root
-password ab12注:因为开端时root未有密码,所以-p旧密码一项就能够简轻易单了。
二、再将root的密码改为djg345。     mysqladmin -u root -p ab12
password djg345

3、扩充新用户

在意:和上面差别,上面包车型大巴因为是MYSQL遭遇中的命令,所在此以前面都带多少个分号作为命令甘休符

格式:grant select on 数据库.* to 用户名@登入主机 identified by
“密码”

1、扩张二个用户test一密码为abc,让她能够在别的主机上登陆,并对负有数据库有查询、插入、修改、删除的权位。首先用root用户连入MYSQL,然后键入以下命令:
    grant select,insert,update,delete on *.* to
[email=test1@”%]test1@”%[/email]” Identified by “abc”;

但净增的用户是相当高危的,你想如某些人掌握test一的密码,那么他就足以在internet上的其它一台微型Computer上登入你的mysql数据库并对您的数额足感到所欲为了,消除办法见二。

二、扩充1个用户test二密码为abc,让她只可以够在localhost上登入,并得以对数据库mydb实行询问、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),那样用户即利用知道test2的密码,他也不知道该如何做从internet上直接待上访问数据库,只好通过MYSQL主机上的web页来访问了。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by
“abc”;

假使您不想test二有密码,能够再打三个发令将密码消掉。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by “”;

 

 

四.一 创设数据库

留意:创造数据库从前要先一连Mysql服务器

指令:create database <数据库名>

例①:建立二个名叫xhkdb的数据库
   mysql> create database xhkdb;

例二:创设数据库并分配用户

一CREATE DATABASE 数据库名;

贰GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTEPAJERO ON 数据库名.* TO
数据库名@localhost IDENTIFIED BY ‘密码’;

3SET PASSWO福特ExplorerD FOTiggo ‘数据库名’@’localhost’ = OLD_PASSWORD(‘密码’);

梯次实施3个指令达成数据库创造。注意:中文“密码”和“数据库”是户本人索要设置的。

三、扩充新用户

专注:和上边差异,上边包车型大巴因为是MYSQL境况中的命令,所未来边都带一个分集团作为命令甘休符
格式:grant select on 数据库.* to 用户名@登录主机 identified by
“密码”
1、扩展1个用户test一密码为abc,让她能够在任何主机上登入,并对富有数据库有询问、插入、修改、删除的权能。首先用root用户连入MYSQL,然后键入以下命令:
    grant select,insert,update,delete on *.* to
[email=test1@”%]test1@”%[/email]” Identified by “abc”;
但增加的用户是十二分危险的,你想如有些人领略test一的密码,那么她就可以在internet上的别的一台计算机上登入你的mysql数据库并对你的多少可感觉所欲为了,消除办法见二。
二、扩张3个用户test二密码为abc,让她只可以够在localhost上登入,并得以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),那样用户即利用知道test二的密码,他也无从从internet上平昔访问数据库,只可以通过MYSQL主机上的web页来访问了。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by
“abc”;
假若您不想test二有密码,可以再打二个下令将密码消掉。     grant
select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by “”;

 

4.一 创造数据库

小心:创设数据库以前要先一连Mysql服务器

指令:create database <数据库名>

例一:建立一个名叫xhkdb的数据库
   mysql> create database xhkdb;

例2:创建数据库并分配用户

1CREATE DATABASE 数据库名;

二GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTE帕杰罗 ON 数据库名.* TO
数据库名@localhost IDENTIFIED BY ‘密码’;

叁SET PASSWO科雷傲D FO凯雷德 ‘数据库名’@’localhost’ = OLD_PASSWORD(‘密码’);

逐条施行一个指令落成数据库创建。注意:普通话“密码”和“数据库”是户本身须求安装的。

wget http://repo.mysql.com//mysql57-community-release-el6-9.noarch.rpm

4.2 呈现数据库

一声令下:show databases (注意:最终有个s)
mysql> show databases;

小心:为了不再突显的时候乱码,要修改数据库默许编码。以下以GBK编码页面为例进行表达:

一、修改MYSQL的陈设文件:my.ini里面修改default-character-set=gbk
二、代码运营时修改:
 
 ①Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
   ②PHP代码:header(“Content-Type:text/html;charset=gb2312”);
   3C语言代码:int mysql_set_character_set( MYSQL * mysql, char *
csname);
该函数用于为当下连连装置默许的字符集。字符串csname钦命了二个有效的字符集名称。连接查对成为字符集的暗中同意核对。该函数的劳作办法与SET
NAMES语句看似,但它还是能设置mysql- >
charset的值,从而影响了由mysql_real_escape_string() 设置的字符集。

四.一 创制数据库

只顾:创制数据库在此以前要先一连Mysql服务器
指令:create database <数据库名>
例1:建立多个名称叫xhkdb的数据库    mysql> create database xhkdb;
例2:创立数据库并分配用户
一CREATE DATABASE 数据库名;
2GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTE福睿斯 ON 数据库名.* TO
数据库名@localhost IDENTIFIED BY ‘密码’;
3SET PASSWO本田UR-VD FOLAND ‘数据库名’@’localhost’ = OLD_PASSWORD(‘密码’);
各样施行二个指令完毕数据库创设。注意:普通话“密码”和“数据库”是户自身须求安装的。

4.2 显示数据库

一声令下:show databases (注意:最终有个s)
mysql> show databases;

专注:为了不再显得的时候乱码,要修改数据库暗中认可编码。以下以GBK编码页面为例举行表达:

一、修改MYSQL的布置文件:my.ini里面修改default-character-set=gbk
二、代码运维时修改:
 
 ①Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
   ②PHP代码:header(“Content-Type:text/html;charset=gb2312”);
   叁C语言代码:int mysql_set_character_set( MYSQL * mysql, char *
csname);
该函数用于为近年来接二连三装置暗中认可的字符集。字符串csname钦命了3个有效的字符集名称。连接核查成为字符集的暗许核查。该函数的干活章程与SET
NAMES语句看似,但它仍是可以够安装mysql- >
charset的值,从而影响了由mysql_real_escape_string() 设置的字符集。

使用yum安装rpm包

四.3 删除数据库

指令:drop database <数据库名>
比方:删除名叫 xhkdb的数据库
mysql> drop database xhkdb;

事例壹:删除一个早就规定期存款在的数据库
   mysql> drop database drop_database;
   Query OK, 0 rows affected (0.00 sec)

事例二:删除二个不明确存在的数据库
   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, 一 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)

四.二 呈现数据库

指令:show databases (注意:最终有个s) mysql> show databases;
瞩目:为了不再展现的时候乱码,要修改数据库默许编码。以下以GBK编码页面为例进行验证:
壹、修改MYSQL的布置文件:my.ini里面修改default-character-set=gbk
二、代码运维时修改:  
 壹Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
   2PHP代码:header(“Content-Type:text/html;charset=gb231二”);  
 三C语言代码:int mysql_set_character_set( MYSQL * mysql, char *
csname);
该函数用于为当前连年装置默许的字符集。字符串csname钦赐了一个有效的字符集名称。连接核对成为字符集的私下认可查对。该函数的做事方法与SET
NAMES语句看似,但它还是能安装mysql- >
charset的值,从而影响了由mysql_real_escape_string() 设置的字符集。

四.三 删除数据库

一声令下:drop database <数据库名>
譬如说:删除名字为 xhkdb的数据库
mysql> drop database xhkdb;

事例一:删除1个业已规定期存款在的数据库
   mysql> drop database drop_database;
   Query OK, 0 rows affected (0.00 sec)

事例贰:删除多个不鲜明期存款在的数据库
   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, 一 warning (0.00
sec)//发生2个警戒表达此数据库不存在
   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)

yum install mysql57-community-release-el6-9.noarch.rpm

四.4 连接数据库

命令: use <数据库名>

比方:假使xhkdb数据仓库储存在,尝试存取它:
   mysql> use xhkdb;
显示屏提醒:Database changed

use
语句能够文告MySQL把db_name数据库作为默许(当前)数据库使用,用于后续语句。
该数据库保持为默许数据库,直到语段的终极,可能直到公布3个例外的USE语句:
   mysql> USE db1;
   mysql> SELECT COUNT(*) FROM mytable;   # selects from
db1.mytable
   mysql> USE db2;
   mysql> SELECT COUNT(*) FROM mytable;   # selects from
db2.mytable

利用USE语句为贰个一定的当下的数据库做标志,不会阻拦你访问别的数据库中的表。上边包车型客车例证能够从db一数据库访问作者表,并从db贰数据库访问编辑表:
   mysql> USE db1;
   mysql> SELECT author_name,editor_name FROM author,db2.editor
       ->        WHERE author.editor_id = db2.editor.editor_id;

USE语句被设立出来,用于与Sybase相包容。

稍微网络朋友问到,连接以往怎么退出。其实,不用退出来,use 数据库后,使用show
databases就能查询全体数据库,假若想跳到其余数据库,用
   use 别的数据库名字
就能够了。

四.三 删除数据库

指令:drop database <数据库名> 比方:删除名叫 xhkdb的数据库
mysql> drop database xhkdb;
事例1:删除一个已经规定期存款在的数据库    mysql> drop database
drop_database;    Query OK, 0 rows affected (0.00 sec)
事例二:删除三个不鲜明期存款在的数据库    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, 一 warning (0.00 sec)//产生2个警示表明此数据库不存在  
 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)

四.肆 连接数据库

指令: use <数据库名>

比如说:若是xhkdb数据仓库储存在,尝试存取它:
   mysql> use xhkdb;
荧屏提示:Database changed

use
语句能够文告MySQL把db_name数据库作为暗许(当前)数据库使用,用于后续语句。
该数据库保持为暗许数据库,直到语段的末了,可能直到发表1个例外的USE语句:
   mysql> USE db1;
   mysql> SELECT COUNT(*) FROM mytable;   # selects from
db1.mytable
   mysql> USE db2;
   mysql> SELECT COUNT(*) FROM mytable;   # selects from
db2.mytable

应用USE语句为三个特定的当前的数据库做标识,不会堵住你访问其它数据库中的表。下边的例子能够从db一数据库访问笔者表,并从db贰数据库访问编辑表:
   mysql> USE db1;
   mysql> SELECT author_name,editor_name FROM author,db2.editor
       ->        WHERE author.editor_id = db2.editor.editor_id;

USE语句被设立出来,用于与Sybase相包容。

多少网络朋友问到,连接以往怎么退出。其实,不用退出去,use 数据库后,使用show
databases就能查询全数数据库,假如想跳到别的数据库,用
   use 其余数据库名字
就能够了。

检测mysql yum源

四.5 当前选拔的数据库

命令:mysql> select database();

MySQL中SELECT命令类似于其余编制程序语言里的print大概write,你能够用它来显示三个字符串、数字、数学表明式的结果等等。怎样使用MySQL中SELECT命令的例外成效?

1.显示MYSQL的版本
mysql> select version(); 
+———————–+ 
| version()             | 
+———————–+ 
| 6.0.4-alpha-community | 
+———————–+ 
1 row in set (0.02 sec) 

二. 来伏贴前光阴
mysql> select now(); 
+———————+ 
| now()               | 
+———————+ 
| 2009-09-15 22:35:32 | 
+———————+ 
1 row in set (0.04 sec) 

三. 展现年月日
SELECT DAYOFMONTH(CURRENT_DATE); 
997755.com澳门葡京 ,+————————–+ 
| DAYOFMONTH(CURRENT_DATE) | 
+————————–+ 
|                       15 | 
+————————–+ 
1 row in set (0.01 sec) 
  
SELECT MONTH(CURRENT_DATE); 
+———————+ 
| MONTH(CURRENT_DATE) | 
+———————+ 
|                   9 | 
+———————+ 
1 row in set (0.00 sec) 
  
SELECT YEAR(CURRENT_DATE); 
+——————–+ 
| YEAR(CURRENT_DATE) | 
+——————–+ 
|               2009 | 
+——————–+ 
1 row in set (0.00 sec) 

四. 来得字符串
mysql> SELECT “welecome to my blog!”; 
+———————-+ 
| welecome to my blog! | 
+———————-+ 
| welecome to my blog! | 
+———————-+ 
1 row in set (0.00 sec) 

五. 当总计器用
select ((4 * 4) / 10 ) + 25; 
+———————-+ 
| ((4 * 4) / 10 ) + 25 | 
+———————-+ 
|                26.60 | 
+———————-+ 
1 row in set (0.00 sec) 

6. 串接字符串
select CONCAT(f_name, ” “, l_name) 
AS Name 
from employee_data 
where title = ‘Marketing Executive’; 
+—————+ 
| Name          | 
+—————+ 
| Monica Sehgal | 
| Hal Simlai    | 
| Joseph Irvine | 
+—————+ 
3 rows in set (0.00 sec) 
在意:那里用到CONCAT()函数,用来把字符串串接起来。此外,咱们还用到以前学到的AS给结果列’CONCAT(f_name,
” “, l_name)’起了个字母。

四.四 连接数据库

一声令下: use <数据库名>
譬如:借使xhkdb数据仓库储存在,尝试存取它:    mysql> use xhkdb;
显示屏提醒:Database changed
use
语句能够布告MySQL把db_name数据库作为暗中同意(当前)数据库使用,用于后续语句。
该数据库保持为默许数据库,直到语段的结尾,只怕直到公布2个差别的USE语句:
   mysql> USE db一;    mysql> SELECT COUNT(*) FROM mytable;   #
selects from db1.mytable    mysql> USE db2;    mysql> SELECT
COUNT(*) FROM mytable;   # selects from db2.mytable
使用USE语句为一个一定的当下的数据库做标识,不会阻碍你访问别的数据库中的表。下边的事例能够从db一数据库访问我表,并从db二数据库访问编辑表:
   mysql> USE db1;    mysql> SELECT author_name,editor_name FROM
author,db2.editor        ->        WHERE author.editor_id =
db2.editor.editor_id;
USE语句被设立出来,用于与Sybase相包容。
有点网上朋友问到,连接现在怎么退出。其实,不用退出来,use 数据库后,使用show
databases就能查询全体数据库,如若想跳到其余数据库,用    use
别的数据库名字 就能够了。

四.五 当前选取的数据库

命令:mysql> select database();

MySQL中SELECT命令类似于其他编制程序语言里的print或许write,你能够用它来显示一个字符串、数字、数学表明式的结果等等。如何利用MySQL中SELECT命令的出格作用?

1.显示MYSQL的版本
mysql> select version(); 
+———————–+ 
| version()             | 
+———————–+ 
| 6.0.4-alpha-community | 
+———————–+ 
1 row in set (0.02 sec) 

二. 突显当今日子
mysql> select now(); 
+———————+ 
| now()               | 
+———————+ 
| 2009-09-15 22:35:32 | 
+———————+ 
1 row in set (0.04 sec) 

三. 呈现年月日
SELECT DAYOFMONTH(CURRENT_DATE); 
+————————–+ 
| DAYOFMONTH(CURRENT_DATE) | 
+————————–+ 
|                       15 | 
+————————–+ 
1 row in set (0.01 sec) 
  
SELECT MONTH(CURRENT_DATE); 
+———————+ 
| MONTH(CURRENT_DATE) | 
+———————+ 
|                   9 | 
+———————+ 
1 row in set (0.00 sec) 
  
SELECT YEAR(CURRENT_DATE); 
+——————–+ 
| YEAR(CURRENT_DATE) | 
+——————–+ 
|               2009 | 
+——————–+ 
1 row in set (0.00 sec) 

肆. 出示字符串
mysql> SELECT “welecome to my blog!”; 
+———————-+ 
| welecome to my blog! | 
+———————-+ 
| welecome to my blog! | 
+———————-+ 
1 row in set (0.00 sec) 

5. 当总结器用
select ((4 * 4) / 10 ) + 25; 
+———————-+ 
| ((4 * 4) / 10 ) + 25 | 
+———————-+ 
|                26.60 | 
+———————-+ 
1 row in set (0.00 sec) 

陆. 串接字符串
select CONCAT(f_name, ” “, l_name) 
AS Name 
from employee_data 
where title = ‘Marketing Executive’; 
+—————+ 
| Name          | 
+—————+ 
| Monica Sehgal | 
| Hal Simlai    | 
| Joseph Irvine | 
+—————+ 
3 rows in set (0.00 sec) 
小心:那里用到CONCAT()函数,用来把字符串串接起来。此外,大家还用到从前学到的AS给结荚列’CONCAT(f_name,
” “, l_name)’起了个假名。

yum repolist enabled | grep "mysql.*-community.*"

伍.一 制造数据表

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

譬如说,建立二个名字为MyClass的表,

字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 默认值
id int 4 primary key auto_increment  
name char 20      
sex int 4     0
degree double 16      

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

4.伍 当前甄选的数据库

命令:mysql> select database();
MySQL中SELECT命令类似于其余编制程序语言里的print也许write,你可以用它来呈现二个字符串、数字、数学表明式的结果等等。怎么着运用MySQL中SELECT命令的奇特效果?
1.显示MYSQL的版本 mysql> select version(); 
+———————–+  | version()             | 
+———————–+  | 6.0.4-alpha-community | 
+———————–+  1 row in set (0.02 sec) 
二. 来妥贴前岁月 mysql> select now();  +———————+  |
now()               |  +———————+  | 2009-09-15 22:35:32 | 
+———————+  1 row in set (0.04 sec) 
3. 显得年月日 SELECT DAYOFMONTH(CURRENT_DATE); 
+————————–+  | DAYOFMONTH(CURRENT_DATE) | 
+————————–+  |                       15 | 
+————————–+  1 row in set (0.01 sec)     SELECT
MONTH(CURRENT_DATE);  +———————+  | MONTH(CURRENT_DATE)
|  +———————+  |                   9 | 
+———————+  1 row in set (0.00 sec)     SELECT
YEAR(CURRENT_DATE);  +——————–+  | YEAR(CURRENT_DATE) | 
+——————–+  |               2009 |  +——————–+ 
1 row in set (0.00 sec) 
肆. 浮现字符串 mysql> SELECT “welecome to my blog!”; 
+———————-+  | welecome to my blog! | 
+———————-+  | welecome to my blog! | 
+———————-+  1 row in set (0.00 sec) 
5. 当总括器用 select ((4 * 4) / 10 ) + 25; 
+———————-+  | ((4 * 4) / 10 ) + 25 | 
+———————-+  |                26.60 | 
+———————-+  1 row in set (0.00 sec) 
6. 串接字符串 select CONCAT(f_name, ” “, l_name)  AS Name  from
employee_data  where title = ‘马克eting Executive’;  +—————+ 
| Name          |  +—————+  | Monica Sehgal |  | 哈尔 Simlai   
|  | Joseph 埃尔文 |  +—————+  三 rows in set (0.00 sec) 
注意:这里用到CONCAT()函数,用来把字符串串接起来。其余,大家还用到在此以前学到的AS给结荚列’CONCAT(f_name,
” “, l_name)’起了个假名。

5.一 创立数据表

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

譬如,建立一个名叫MyClass的表,

字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 默认值
id int 4 primary key auto_increment  
name char 20      
sex int 4     0
degree double 16      

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

二、从mysql yum源中选用mysql安装版本

5.三 删除数据表

命令:drop table <表名>

诸如:删除表名字为 MyClass 的表
   mysql> drop table MyClass;

DROP
TABLE用于撤销1个或多少个表。您必须有各样表的DROP权限。全部的表数据和表定义会被撤回,所以利用本语句要小心!

在意:对于3个带分区的表,DROP
TABLE会永世性地收回表定义,裁撤各分区,并撤除积存在那么些分区中的全体数据。DROP
TABLE还会撤废与被收回的表有关联的分区定义(.par)文件。

对与不设有的表,使用IF EXISTS用于幸免错误发生。当使用IF
EXISTS时,对于每一种不存在的表,会转移1个NOTE。

RESTRAV4ICT和CASCADE能够使分区更易于。最近,RESTLX570ICT和CASCADE不起成效。

5.壹 创立数据表

命令:create table <表名> ( <字段名1> <类型1>
[,..<字段名n> <类型n>]);
譬如,建立三个名称为MyClass的表,

字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 默认值
id int 4 primary key auto_increment  
name char 20      
sex int 4     0
degree double 16      

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

5.三 删除数据表

命令:drop table <表名>

举例:删除表名字为 MyClass 的表
   mysql> drop table MyClass;

DROP
TABLE用于撤消1个或多少个表。您必须有各种表的DROP权限。全数的表数据和表定义会被吊销,所以采取本语句要小心!

注意:对于四个带分区的表,DROP
TABLE组织带头人久性地收回表定义,撤消各分区,并注销累积在这一个分区中的全体数据。DROP
TABLE还会收回与被吊销的表有关联的分区定义(.par)文件。

对与不设有的表,使用IF EXISTS用于幸免错误发生。当使用IF
EXISTS时,对于种种不设有的表,会生成八个NOTE。

RESTBMWX五ICT和CASCADE能够使分区更易于。近日,REST奥迪Q五ICT和CASCADE不起作用。

一、查看mysql yum旅馆的财富

5.4 表插入数据

命令:insert into <表名> [( <字段名1>[,..<字段名n >
])] values ( 值1 )[, ( 值n )]

比方:往表 MyClass中插入2条记下,
这二条记下表示:编号为一的名称为汤姆的实际业绩为玖六.45, 编号为2 的名称为Joan
的成就为八二.9九, 编号为三 的名称叫Wang 的大成为96.伍。
   mysql> insert into MyClass values(1,’Tom’,96.45),(2,’Joan’,82.99),
(2,’Wang’, 96.59);

注意:insert into每一回只可以向表中插入一条记下。

5.三 删除数据表

命令:drop table <表名>
比如:删除表名称叫 MyClass 的表    mysql> drop table MyClass;
DROP
TABLE用于打消1个或五个表。您必须有各样表的DROP权限。全体的表数据和表定义会被撤回,所以使用本语句要小心!
留意:对于一个带分区的表,DROP
TABLE会永世性地打消表定义,撤除各分区,并注销积攒在这么些分区中的全部数据。DROP
TABLE还会收回与被撤回的表有关联的分区定义(.par)文件。
对与不设有的表,使用IF EXISTS用于幸免错误发生。当使用IF
EXISTS时,对于每一个不设有的表,会生成贰个NOTE。
REST奇骏ICT和CASCADE能够使分区更便于。近日,REST大切诺基ICT和CASCADE不起成效。

5.4 表插入数据

命令:insert into <表名> [( <字段名1>[,..<字段名n >
])] values ( 值1 )[, ( 值n )]

比如说:往表 MyClass中插入二条记下,
那2条记下表示:编号为一的名称为汤姆的成就为96.肆5, 编号为贰 的名为Joan
的大成为82.9玖, 编号为叁 的名称为Wang 的实际业绩为96.5。
   mysql> insert into MyClass values(1,’Tom’,96.45),(2,’Joan’,82.99),
(2,’Wang’, 96.59);

留神:insert into每一次只可以向表中插入一条记下。

yum repolist all | grep mysql

5.5 查询表中的数据

一)、查询全部行
命令: select <字段1,字段2,…> from < 表名 > where <
表达式 >
举个例子:查看表 MyClass 中负有数据
   mysql> select * from MyClass;

贰)、查询前几行数据
例如:查看表 MyClass 中前2行数据
mysql> select * from MyClass order by id limit 0,2;

select一般合营where使用,以询问越来越纯粹更复杂的数据。

五.4 表插入数据

命令:insert into <表名> [( <字段名1>[,..<字段名n >
])] values ( 值1 )[, ( 值n )]
例如说:往表 MyClass中插入2条记下,
这贰条记下表示:编号为壹的名叫汤姆的实际业绩为九陆.肆伍, 编号为2 的名称为Joan
的实际业绩为八2.9九, 编号为三 的名称叫Wang 的成就为9陆.5。    mysql> insert
into MyClass values(一,’汤姆’,玖陆.四伍),(2,’Joan’,八2.9玖), (二,’Wang’,
玖6.5九);
只顾:insert into每趟只好向表中插入一条记下。

五.5 查询表中的数据

1)、查询全数行
命令: select <字段1,字段2,…> from < 表名 > where <
表达式 >
譬如说:查看表 MyClass 中颇具数据
   mysql> select * from MyClass;

二)、查询前几行数据
例如:查看表 MyClass 中前2行数据
mysql> select * from MyClass order by id limit 0,2;

select一般协作where使用,以询问更确切更扑朔迷离的数额。

2、修改msql
yum源配置中的 enabled选项,如要安装mysql5.8,将mysql57-community中的enabled=1修改为enabled=0

5.陆 删除表中数据

 

 

 

命令:delete from 表名 where 表达式

比如:删除表 MyClass中编号为一 的记录
mysql> delete from MyClass where id=1;

上面是一个刨除数据前后表的对照。

FirstName LastName Age
Peter Griffin 35
Glenn Quagmire 33

上边以PHP代码为例删除 “Persons” 表中有所 LastName=’格里芬’ 的记录:

<?php 
   $con = mysql_connect("localhost","peter","abc123"); 
   if (!$con) 
   {
      die('Could not connect: ' . mysql_error()); 
   } 
   mysql_select_db("my_db", $con); 
   mysql_query("DELETE FROM Persons WHERE LastName='Griffin'"); mysql_close($con); 
?>

在此次删除之后,表是这样的:

FirstName LastName Age
Glenn Quagmire 33

伍.5 查询表中的数据

一)、查询全体行 命令: select <字段一,字段二,…> from <
表名 > where < 表明式 > 比方:查看表 MyClass 中有着数据  
 mysql> select * from MyClass;
二)、查询前几行数据 例如:查看表 MyClass 中前2行数据 mysql>
select * from MyClass order by id limit 0,2;
select一般同盟where使用,以询问更标准更扑朔迷离的数额。

5.六 删除表中数据

 

 

 

命令:delete from 表名 where 表达式

比方说:删除表 MyClass中编号为一 的笔录
mysql> delete from MyClass where id=1;

下边是2个删减数据前后表的看待。

FirstName LastName Age
Peter Griffin 35
Glenn Quagmire 33

下边以PHP代码为例删除 “Persons” 表中保有 LastName=’格里芬’ 的笔录:

<?php 
   $con = mysql_connect("localhost","peter","abc123"); 
   if (!$con) 
   {
      die('Could not connect: ' . mysql_error()); 
   } 
   mysql_select_db("my_db", $con); 
   mysql_query("DELETE FROM Persons WHERE LastName='Griffin'"); mysql_close($con); 
?>

在此番删除之后,表是这样的:

FirstName LastName Age
Glenn Quagmire 33

[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

5.七 修改表中多少

语法:update 表名 set 字段=新值,… where 条件
   mysql> update MyClass set name=’Mary’ where id=1;

例子1:单表的MySQL UPDATE语句:
   UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1
[, col_name2=expr2 …] [WHERE where_definition] [ORDER BY
…] [LIMIT row_count]

例子2:多表的UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET
col_name1=expr1 [, col_name2=expr2 …] [WHERE
where_definition]

UPDATE语法能够用新值更新原有表行中的各列。SET子句提示要修改哪些列和要给以什么值。WHERE子句钦点应立异哪些行。尽管未有WHERE子句,则更新具有的行。假如钦命了O卡宴DER
BY子句,则依据被钦点的顺序对行进行更新。LIMIT子句用于给定多个限值,限制能够被更新的行的多少。

 

伍.六 删除表中数据

 

 

 

命令:delete from 表名 where 表达式
例如说:删除表 MyClass中编号为一 的笔录 mysql> delete from MyClass where
id=1;
下边是二个删减数据前后表的相比较。

FirstName LastName Age
Peter Griffin 35
Glenn Quagmire 33

上边以PHP代码为例删除 “Persons” 表中享有 LastName=’Griffin’ 的记录:

<?php 
   $con = mysql_connect("localhost","peter","abc123"); 
   if (!$con) 
   {
      die('Could not connect: ' . mysql_error()); 
   } 
   mysql_select_db("my_db", $con); 
   mysql_query("DELETE FROM Persons WHERE LastName='Griffin'"); mysql_close($con); 
?>

在此次删除之后,表是那样的:

FirstName LastName Age
Glenn Quagmire 33

5.七 修改表中数据

语法:update 表名 set 字段=新值,… where 条件
   mysql> update MyClass set name=’Mary’ where id=1;

例子1:单表的MySQL UPDATE语句:
   UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1
[, col_name2=expr2 …] [WHERE where_definition] [ORDER BY
…] [LIMIT row_count]

例子2:多表的UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET
col_name1=expr1 [, col_name2=expr2 …] [WHERE
where_definition]

UPDATE语法能够用新值更新原有表行中的各列。SET子句提醒要修改哪些列和要给以什么值。WHERE子句钦命应革新哪些行。假如未有WHERE子句,则更新具有的行。假设钦定了O奥迪Q7DER
BY子句,则依照被钦点的依次对行实行更新。LIMIT子句用于给定二个限值,限制能够被更新的行的数据。

 

   将mysql80-community中enabled=0修改为enabled=1

伍.8 扩张字段

命令:alter table 表名 add字段 类型 其他;
譬如说:在表MyClass中增添了3个字段passtest,类型为int(四),暗中同意值为0
   mysql> alter table MyClass add passtest int(4)
default
 ‘0’

加索引
   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2
…]);
例子: mysql> alter table employee add index emp_name (name);

加主关键字的目录
  mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);

加唯一限制条件的目录
   mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique
emp_name2(cardnumber);

剔除有个别索引
   mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;

充实字段:
mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及项目:
mysql> ALTER TABLE table_name CHANGE old_field_name
new_field_name field_type;

剔除字段:
MySQL ALTER TABLE table_name DROP field_name;

5.七 修改表中多少

语法:update 表名 set 字段=新值,… where 条件    mysql> update MyClass
set name=’Mary’ where id=1;
例子1:单表的MySQL UPDATE语句:    UPDATE [LOW_PRIORITY]
[IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2
…] [WHERE where_definition] [ORDER BY …] [LIMIT
row_count]
例子2:多表的UPDATE语句: UPDATE [LOW_PRIORITY] [IGNORE]
table_references SET col_name1=expr1 [, col_name2=expr2
…] [WHERE where_definition]
UPDATE语法能够用新值更新原有表行中的各列。SET子句提醒要修改哪些列和要赋予什么值。WHERE子句钦命应创新哪些行。假诺未有WHERE子句,则更新具备的行。要是钦赐了OCRUISERDER
BY子句,则依照被钦赐的相继对行举行更新。LIMIT子句用于给定四个限值,限制能够被更新的行的多少。

 

伍.八 扩展字段

命令:alter table 表名 add字段 类型 其他;
譬如说:在表MyClass中增添了1个字段passtest,类型为int(四),私下认可值为0
   mysql> alter table MyClass add passtest int(4)
default
 ‘0’

加索引
   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2
…]);
例子: mysql> alter table employee add index emp_name (name);

加主关键字的目录
  mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);

加唯一限制规范的目录
   mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique
emp_name2(cardnumber);

除去有个别索引
   mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;

日增字段:
mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及项目:
mysql> ALTER TABLE table_name CHANGE old_field_name
new_field_name field_type;

删除字段:
MySQL ALTER TABLE table_name DROP field_name;

# Enable to use MySQL 8.0
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

5.玖 修改表名

命令:rename table 原表名 to 新表名;

比方:在表MyClass名字改成为YouClass
   mysql> rename table MyClass to YouClass;

当您试行 RENAME
时,你不能有其余锁定的表或位移的作业。你同一也必须有对原初表的 ALTE奔驰M级 和
DROP 权限,以及对新表的 CREATE 和 INSERT 权限。

若是在多表更名中,MySQL
遭蒙受别的错误,它将对具备被更名的表张开退步更名,将每件事物退回到最初状态。

RENAME TABLE 在 MySQL 三.贰三.二三 中被投入。

5.八 扩充字段

命令:alter table 表名 add字段 类型 其余;
比方:在表MyClass中增添了叁个字段passtest,类型为int(四),暗中同意值为0  
 mysql> alter table MyClass add passtest int(4)
default
 ‘0’
加索引    mysql> alter table 表名 add index 索引名
(字段名1[,字段名2 …]); 例子: mysql> alter table employee add
index emp_name (name);
加主关键字的目录   mysql> alter table 表名 add primary key
(字段名); 例子: mysql> alter table employee add primary key(id);
加唯一限制标准的目录    mysql> alter table 表名 add unique 索引名
(字段名); 例子: mysql> alter table employee add unique
emp_name2(cardnumber);
删去某些索引    mysql> alter table 表名 drop index 索引名; 例子:
mysql>alter table employee drop index emp_name;
扩展字段: mysql> ALTER TABLE table_name ADD field_name
field_type;
修改原字段名称及项目: mysql> ALTER TABLE table_name CHANGE
old_field_name new_field_name field_type;
删除字段: MySQL ALTER TABLE table_name DROP field_name;

五.玖 修改表名

命令:rename table 原表名 to 新表名;

比方说:在表MyClass名字改成为YouClass
   mysql> rename table MyClass to YouClass;

当你实施 RENAME
时,你不可能有其余锁定的表或位移的事情。你同一也必须有对原初表的 ALTE福特Explorer 和
DROP 权限,以及对新表的 CREATE 和 INSERT 权限。

设若在多表更名中,MySQL
遭蒙受任何不当,它将对具有被更名的表展开退步更名,将每件东西退回到中期状态。

RENAME TABLE 在 MySQL 三.23.2三 中被投入。

叁、查看当前yum源能够安装的版本

6、备份数据库

命令在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

叁.导出三个数据库结构
    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

五.九 修改表名

命令:rename table 原表名 to 新表名;
譬如说:在表MyClass名字改成为YouClass    mysql> rename table MyClass to
YouClass;
当你施行 RENAME
时,你不能够有任何锁定的表或位移的事体。你一样也必须有对原初表的 ALTE奥迪Q5 和
DROP 权限,以及对新表的 CREATE 和 INSERT 权限。
要是在多表更名中,MySQL
遭境遇任何不当,它将对持有被更名的表进行失败更名,将每件东西退回到最初状态。
RENAME TABLE 在 MySQL 叁.2三.23 中被参与。

6、备份数据库

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

一.导出全体数据库
导出文件暗中同意是存在mysql\bin目录下
    mysqldump -u 用户名 -p 数据库名 > 导出的文本名
    mysqldump -u user_name -p123456 database_name >
outfile_name.sql

二.导出一个表
    mysqldump -u 用户名 -p 数据库名 表名> 导出的公文名
    mysqldump -u user_name -p database_name table_name >
outfile_name.sql

叁.导出二个数据库结构
    mysqldump -u user_name -p -d –add-drop-table database_name >
outfile_name.sql
    -d 未有数量 –add-drop-table 在各类create语句以前扩展三个drop table

四.带语言参数导出
    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

yum repolist enabled | grep mysql

柒.一 二个建库和建表的实例一

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’,’奥斯汀一中’,’1980-十-拾′);
insert into teacher values(”,’jack’,’亚松森二中’,’一玖七二-12-贰3′);

一旦您在mysql提醒符键入上边的吩咐也得以,但不便宜调节和测试。
一、你能够将上述命令原样写入四个文件文件中,假如为school.sql,然后复制到c:\\下,并在DOS状态进入目录[url=file://\\mysql\\bin]\\mysql\\bin[/url],然后键入以下命令:
    mysql -uroot -p密码 < c:\\school.sql
设若成功,空出1行无此外呈现;如有错误,会有提示。(以上命令已经调节和测试,你若是将//的解说去掉就能够使用)。

2、恐怕进入命令行后选用 mysql> source c:\\school.sql;
也能够将school.sql文件导入数据库中。

6、备份数据库

命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目录下施行
一.导出整个数据库 导出文件暗中同意是存在mysql\bin目录下     mysqldump -u
用户名 -p 数据库名 > 导出的公文名     mysqldump -u user_name
-p123456 database_name > outfile_name.sql
贰.导出叁个表     mysqldump -u 用户名 -p 数据库名 表名>
导出的文本名     mysqldump -u user_name -p database_name table_name
> outfile_name.sql
3.导出2个数据库结构     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

7.壹 多少个建库和建表的实例一

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’,’奥斯汀一中’,’1978-10-十′);
insert into teacher values(”,’jack’,’明斯克2中’,’1975-12-二3′);

假使您在mysql提醒符键入下面的命令也足以,但不便宜调节和测试。
壹、你能够将以上命令原样写入2个文本文件中,尽管为school.sql,然后复制到c:\\下,并在DOS状态进入目录[url=file://\\mysql\\bin]\\mysql\\bin[/url],然后键入以下命令:
    mysql -uroot -p密码 < c:\\school.sql
假如成功,空出一行无别的呈现;如有错误,会有提醒。(以上命令已经调节和测试,你只要将//的笺注去掉就能够使用)。

2、可能进入命令行后应用 mysql> source c:\\school.sql;
也可以将school.sql文件导入数据库中。

三、安装mysql

七.二 贰个建库和建表的实例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(””,”glchengang”,”尼科西亚一中”,”1玖78-10-10”);
insert into teacher values(””,”jack”,”日内瓦一中”,”197伍-12-贰三”);

注:在建表中
一、将ID设为长度为三的数字字段:int(三);并让它每种记录自动加一:auto_increment;并不能够为空:not
null;而且让她改成主字段primary key。

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

三、将ADDRESS设为长度50的字符字段,而且缺省值为费城。

四、将YEALAND设为日期字段。

七.一 二个建库和建表的实例一

drop database if exists school; //倘诺存在SCHOOL则删除 create database
school; //建立库SCHOOL use school; //展开库SCHOOL create table teacher
//建立表TEACHERubicon (     id int(三) auto_increment not null primary key,
    name char(10) not null,     address varchar(50) default ‘费城’,    
year date ); //建表停止
//以下为插入字段 insert into teacher
values(”,’allen’,’第Billy斯第一中学’,’1九79-10-十′); insert into teacher
values(”,’jack’,’浦那第22中学’,’197五-1二-二三′);
要是您在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文件导入数据库中。

7.二 二个建库和建表的实例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(””,”glchengang”,”布Rees班一中”,”197八-10-10”);
insert into teacher values(””,”jack”,”布里斯班一中”,”1975-1二-二三”);

注:在建表中
一、将ID设为长度为三的数字字段:int(3);并让它各种记录自动加壹:auto_increment;并无法为空:not
null;而且让她产生主字段primary key。

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

三、将ADDRESS设为长度50的字符字段,而且缺省值为卡塔尔多哈。

4、将YEASportage设为日期字段。

 

 

工欲善其事,必先利其器。

yum install mysql-community-server

7.贰 一个建库和建表的实例二

drop database if exists school; //假设存在SCHOOL则删除 create database
school; //建立库SCHOOL use school; //张开库SCHOOL create table teacher
//建立表TEACHEPRADO (     id int(三) auto_increment not null primary key,
    name char(10) not null,     address varchar(50) default ”温哥华”,
    year date ); //建表停止
//以下为插入字段 insert into teacher
values(””,”glchengang”,”卡塔尔多哈第一中学”,”壹玖八零-10-十”); insert into
teacher values(””,”jack”,”布Rees班一中”,”1975-1贰-二三”);
注:在建表中
1、将ID设为长度为三的数字字段:int(3);并让它各类记录自动加一:auto_increment;并不可能为空:not
null;而且让她改成主字段primary key。
贰、将NAME设为长度为10的字符字段
3、将ADDRESS设为长度50的字符字段,而且缺省值为费城。
四、将YEA奇骏设为日期字段。

 

 

四、启动mysql服务器     

service mysqld start

mysql运转进度中,会活动实行以下操作:

1、初始化msql

2、七个SSL证书和密钥文件在数据目录中生成(/var/lib/mysql)。

3、 validate_password
plugin 被安装

四、一个超级级用户帐号'root'@'localhost 被成立,并且会为帐号生成随机密码,随机密码存储在错误日志文件之中。要来得它,使用以下命令:

grep 'temporary password' /var/log/mysqld.log

在安装到位后应及早接纳刚才生成的随机密码登入mysql,然后修改一级用户帐号密码  

shell> mysql -uroot -p 
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

 

伍、查看mysql运维状态

shell>service mysqld status
mysqld (pid  20726) is running...

 陆、安装运维难点

  1、mysql运营出现”initialize specified but
the data directory has files in it. Aborting”错误?

     将引得/var/lib/mysql删除后再度启航就能够     

rm /var/lib/mysql
service mysqld start

七、mysql常用命令

1、连接Mysql

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

一、连接受本机上的MYSQL。
首先张开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root
-p,回车后提示您输密码.注意用户名前能够有空格也能够未有空格,不过密码前务必未有空格,否则让您重新输入密码。

借使刚安装好MYSQL,一流用户root是从未密码的,故直接回车就能够进入到MYSQL中了,MYSQL的晋升符是:
mysql>

2、连接到长途主机上的MYSQL。假诺远程主机的IP为:110.110.1拾.110,用户名字为root,密码为abcd1二三。则键入以下命令:
    mysql -h110.110.110.110 -u root -p
1二3;(注:u与root之间能够毫不加空格,别的也壹律)

3、退出MYSQL命令: exit (回车)

 

二、修改密码

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

1、给root加个密码ab12。
首先在DOS下进入目录mysql\bin,然后键入以下命令
    mysqladmin -u root -password ab12
注:因为开首时root未有密码,所以-p旧密码壹项就能够简简单单了。

贰、再将root的密码改为djg34⑤。
    mysqladmin -u root -p ab12 password djg345

三、扩大新用户

专注:和方面差异,上边包车型地铁因为是MYSQL情形中的命令,所从前面都带三个分行作为命令结束符

格式:grant select on 数据库.* to 用户名@登陆主机 identified by
“密码”

壹、扩展二个用户test壹密码为abc,让她能够在别的主机上登6,并对具有数据库有询问、插入、修改、删除的权力。首先用root用户连入MYSQL,然后键入以下命令:
    grant select,insert,update,delete on *.* to
[email=test1@”%]test1@”%[/email]” Identified by “abc”;

但净增的用户是极度快要灭亡的,你想如有个别人驾驭test1的密码,那么他就足以在internet上的其他一台微型Computer上登录你的mysql数据库并对您的数目足以任性妄为了,消除办法见贰。

二、扩展二个用户test二密码为abc,让他只还好localhost上登入,并能够对数据库mydb实行询问、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),那样用户即选取知道test二的密码,他也无能为力从internet上直接待上访问数据库,只可以通过MYSQL主机上的web页来访问了。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by
“abc”;

若是您不想test贰有密码,能够再打二个限令将密码消掉。
    grant select,insert,update,delete on mydb.* to
[email=test2@localhost]test2@localhost[/email] identified by “”;

 

四.壹 成立数据库

留神:创立数据库以前要先接二连三Mysql服务器

命令:create database <数据库名>

例一:建立2个名称为xhkdb的数据库
   mysql> create database xhkdb;

例2:创造数据库并分配用户

1CREATE DATABASE 数据库名;

贰GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTETiggo ON 数据库名.* TO
数据库名@localhost IDENTIFIED BY ‘密码’;

三SET PASSWOBMWX5D FO劲客 ‘数据库名’@’localhost’ = OLD_PASSWORD(‘密码’);

逐条推行贰个指令达成数据库创立。注意:中文“密码”和“数据库”是户本人须要安装的。

四.二 呈现数据库

一声令下:show databases (注意:最终有个s)
mysql> show databases;

注意:为了不再彰显的时候乱码,要修改数据库私下认可编码。以下以GBK编码页面为例举办求证:

一、修改MYSQL的布局文件:my.ini里面修改default-character-set=gbk
二、代码运营时修改:
 
 ①Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
   ②PHP代码:header(“Content-Type:text/html;charset=gb2312”);
   叁C语言代码:int mysql_set_character_set( MYSQL * mysql, char *
csname);
该函数用于为当下总是装置暗许的字符集。字符串csname钦定了3个有效的字符集名称。连接核查成为字符集的暗中认可核对。该函数的做事措施与SET
NAMES语句看似,但它还能安装mysql- >
charset的值,从而影响了由mysql_real_escape_string() 设置的字符集。

4.三 删除数据库

指令:drop database <数据库名>
举例:删除名叫 xhkdb的数据库
mysql> drop database xhkdb;

事例一:删除一个早已鲜明期存款在的数据库
   mysql> drop database drop_database;
   Query OK, 0 rows affected (0.00 sec)

事例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, 一 warning (0.00
sec)//发生3个告诫表明此数据库不设有
   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)

四.肆 连接数据库

命令: use <数据库名>

譬如:要是xhkdb数据仓库储存在,尝试存取它:
   mysql> use xhkdb;
显示器提醒:Database changed

use
语句能够文告MySQL把db_name数据库作为暗中认可(当前)数据库使用,用于后续语句。
该数据库保持为默许数据库,直到语段的末梢,也许直到宣布2个两样的USE语句:
   mysql> USE db1;
   mysql> SELECT COUNT(*) FROM mytable;   # selects from
db1.mytable
   mysql> USE db2;
   mysql> SELECT COUNT(*) FROM mytable;   # selects from
db2.mytable

行使USE语句为一个一定的此时此刻的数据库做标识,不会阻碍你访问其余数据库中的表。下边包车型大巴例子能够从db一数据库访问小编表,并从db2数据库访问编辑表:
   mysql> USE db1;
   mysql> SELECT author_name,editor_name FROM author,db2.editor
       ->        WHERE author.editor_id = db2.editor.editor_id;

USE语句被设置出来,用于与Sybase相包容。

稍微网上好友问到,连接现在怎么退出。其实,不用退出去,use 数据库后,使用show
databases就能查询全体数据库,假如想跳到别的数据库,用
   use 其余数据库名字
就足以了。

4.伍 当前选取的数据库

命令:mysql> select database();

MySQL中SELECT命令类似于别的编制程序语言里的print或许write,你能够用它来展现二个字符串、数字、数学表达式的结果等等。如何采纳MySQL中SELECT命令的异样效用?

1.显示MYSQL的版本
mysql> select version(); 
+———————–+ 
| version()             | 
+———————–+ 
| 6.0.4-alpha-community | 
+———————–+ 
1 row in set (0.02 sec) 

二. 展现当前时间
mysql> select now(); 
+———————+ 
| now()               | 
+———————+ 
| 2009-09-15 22:35:32 | 
+———————+ 
1 row in set (0.04 sec) 

叁. 出示年月日
SELECT DAYOFMONTH(CURRENT_DATE); 
+————————–+ 
| DAYOFMONTH(CURRENT_DATE) | 
+————————–+ 
|                       15 | 
+————————–+ 
1 row in set (0.01 sec) 
  
SELECT MONTH(CURRENT_DATE); 
+———————+ 
| MONTH(CURRENT_DATE) | 
+———————+ 
|                   9 | 
+———————+ 
1 row in set (0.00 sec) 
  
SELECT YEAR(CURRENT_DATE); 
+——————–+ 
| YEAR(CURRENT_DATE) | 
+——————–+ 
|               2009 | 
+——————–+ 
1 row in set (0.00 sec) 

四. 来得字符串
mysql> SELECT “welecome to my blog!”; 
+———————-+ 
| welecome to my blog! | 
+———————-+ 
| welecome to my blog! | 
+———————-+ 
1 row in set (0.00 sec) 

五. 当计算器用
select ((4 * 4) / 10 ) + 25; 
+———————-+ 
| ((4 * 4) / 10 ) + 25 | 
+———————-+ 
|                26.60 | 
+———————-+ 
1 row in set (0.00 sec) 

陆. 串接字符串
select CONCAT(f_name, ” “, l_name) 
AS Name 
from employee_data 
where title = ‘Marketing Executive’; 
+—————+ 
| Name          | 
+—————+ 
| Monica Sehgal | 
| Hal Simlai    | 
| Joseph Irvine | 
+—————+ 
3 rows in set (0.00 sec) 
只顾:那里用到CONCAT()函数,用来把字符串串接起来。别的,大家还用到以前学到的AS给结荚列’CONCAT(f_name,
” “, l_name)’起了个假名。

5.一 创设数据表

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

譬如,建立3个名称为MyClass的表,

字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 默认值
id int 4 primary key auto_increment  
name char 20      
sex int 4     0
degree double 16      

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用于裁撤1个或多少个表。您必须有各类表的DROP权限。全数的表数据和表定义会被吊销,所以使用本语句要小心!

留意:对于三个带分区的表,DROP
TABLE会恒久性地撤除表定义,撤销各分区,并收回储存在这一个分区中的全数数据。DROP
TABLE还会打消与被收回的表有关联的分区定义(.par)文件。

对与不存在的表,使用IF EXISTS用于幸免错误发生。当使用IF
EXISTS时,对于各个不设有的表,会扭转一个NOTE。

REST安德拉ICT和CASCADE可以使分区更便于。近来,RESTSportageICT和CASCADE不起成效。

5.4 表插入数据

命令:insert into <表名> [( <字段名1>[,..<字段名n >
])] values ( 值1 )[, ( 值n )]

譬如:往表 MyClass中插入2条记下,
那贰条记下表示:编号为1的名称叫汤姆的实际业绩为玖陆.四伍, 编号为二 的名字为Joan
的实际业绩为八贰.9玖, 编号为三 的名称为Wang 的成就为九6.5。
   mysql> insert into MyClass values(1,’Tom’,96.45),(2,’Joan’,82.99),
(2,’Wang’, 96.59);

注意:insert into每一回只好向表中插入一条记下。

五.5 查询表中的数据

1)、查询全部行
命令: select <字段1,字段2,…> from < 表名 > where <
表达式 >
比方:查看表 MyClass 中负有数据
   mysql> select * from MyClass;

二)、查询前几行数据
例如:查看表 MyClass 中前2行数据
mysql> select * from MyClass order by id limit 0,2;

select一般协作where使用,以询问更标准更扑朔迷离的多少。

5.陆 删除表中数据

 

 

 

命令:delete from 表名 where 表达式

比如:删除表 MyClass中编号为壹 的笔录
mysql> delete from MyClass where id=1;

上边是1个剔除数据前后表的对峙统一。

FirstName LastName Age
Peter Griffin 35
Glenn Quagmire 33

下边以PHP代码为例删除 “Persons” 表中颇具 LastName=’格里芬’ 的笔录:

<?php 
   $con = mysql_connect("localhost","peter","abc123"); 
   if (!$con) 
   {
      die('Could not connect: ' . mysql_error()); 
   } 
   mysql_select_db("my_db", $con); 
   mysql_query("DELETE FROM Persons WHERE LastName='Griffin'"); mysql_close($con); 
?>

在这一次删除之后,表是那样的:

FirstName LastName Age
Glenn Quagmire 33

五.7 修改表中数据

语法:update 表名 set 字段=新值,… where 条件
   mysql> update MyClass set name=’Mary’ where id=1;

例子1:单表的MySQL UPDATE语句:
   UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1
[, col_name2=expr2 …] [WHERE where_definition] [ORDER BY
…] [LIMIT row_count]

例子2:多表的UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET
col_name1=expr1 [, col_name2=expr2 …] [WHERE
where_definition]

UPDATE语法能够用新值更新原有表行中的各列。SET子句提醒要修改哪些列和要予以什么值。WHERE子句钦点应立异哪些行。假设未有WHERE子句,则更新具有的行。假使内定了O福睿斯DER
BY子句,则依据被内定的逐1对行举行翻新。LIMIT子句用于给定3个限值,限制能够被更新的行的数量。

 

伍.8 增添字段

命令:alter table 表名 add字段 类型 其他;
诸如:在表MyClass中加多了叁个字段passtest,类型为int(4),暗许值为0
   mysql> alter table MyClass add passtest int(4)
default
 ‘0’

加索引
   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2
…]);
例子: mysql> alter table employee add index emp_name (name);

加主关键字的目录
  mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);

加唯一限制条件的目录
   mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique
emp_name2(cardnumber);

删去有个别索引
   mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;

日增字段:
mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及项目:
mysql> ALTER TABLE table_name CHANGE old_field_name
new_field_name field_type;

剔除字段:
MySQL ALTER TABLE table_name DROP field_name;

五.玖 修改表名

命令:rename table 原表名 to 新表名;

诸如:在表MyClass名字改成为YouClass
   mysql> rename table MyClass to YouClass;

当您实践 RENAME
时,你不可能有其余锁定的表或位移的事务。你一样也必须有对原初表的 ALTEHummerH二 和
DROP 权限,以及对新表的 CREATE 和 INSERT 权限。

即使在多表更名中,MySQL
遭蒙受别的错误,它将对富有被更名的表张开战败更名,将每件事物退回到中期状态。

RENAME TABLE 在 MySQL 叁.2三.二三 中被参加。

6、备份数据库

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

1.导出全体数据库
导出文件默许是存在mysql\bin目录下
    mysqldump -u 用户名 -p 数据库名 > 导出的文本名
    mysqldump -u user_name -p123456 database_name >
outfile_name.sql

二.导出1个表
    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语句之前扩充2个drop table

四.带语言参数导出
    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

7.一 二个建库和建表的实例壹

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’,’明斯克一中’,’一玖七柒-十-十′);
insert into teacher values(”,’jack’,’辛辛那提第22中学’,’197五-1二-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文件导入数据库中。

柒.2 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”,”费城一中”,”一九7陆-十-十”);
insert into teacher values(””,”jack”,”德国首都一中”,”197伍-12-贰三”);

注:在建表中
一、将ID设为长度为三的数字字段:int(三);并让它每个记录自动加壹:auto_increment;并不可能为空:not
null;而且让他形成主字段primary key。

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

三、将ADDRESS设为长度50的字符字段,而且缺省值为费城。

4、将YEA昂科威设为日期字段。

 

参照文档:

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website