Linux下MySQL数据库常用基本操作

来源:互联网 发布:linux 下载wget安装包 编辑:程序博客网 时间:2024/05/31 18:52

连接MySQL:

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

1、例1:连接到本机上的MYSQL

找到mysql的安装目录,一般可以直接键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>

2、连接到远程主机上的MySQL

假设远程主机的IP为:10.0.0.1,用户名为root,密码为123。则键入以下命令:

mysql -h10.0.0.1 -uroot -p123

(注:u与root可以不用加空格,其它也一样)

3、退出MySQL命令

exit (回车)

MySQL数据库常用操作

1、显示数据库

 show databases;

2、选择数据库

use 数据库名;

3、显示数据库中的表

show tables;

4、显示数据表的结构
 

describe 表名;

 

5、显示表中记录
 

SELECT * FROM 表名

 


6、建库

 create databse 库名;

 

7、建表
 

复制代码
create table 表名 (字段设定列表);mysql> create table name(    -> id int auto_increment not null primary key ,    -> uname char(8),    -> gender char(2),    -> birthday date );Query OK, 0 rows affected (0.03 sec)mysql> show tables;+------------------+| Tables_in_userdb |+------------------+| name             |+------------------+1 row in set (0.00 sec)mysql> describe name;+----------+---------+------+-----+---------+----------------+| Field    | Type    | Null | Key | Default | Extra          |+----------+---------+------+-----+---------+----------------+| id       | int(11) | NO   | PRI | NULL    | auto_increment || uname    | char(8) | YES  |     | NULL    |                || gender   | char(2) | YES  |     | NULL    |                || birthday | date    | YES  |     | NULL    |                |+----------+---------+------+-----+---------+----------------+4 rows in set (0.00 sec)注: auto_increment 自增     primary key    主键
复制代码

 


8、增加记录

 insert into name(uname,gender,birthday) values('张三','','1971-10-01');

 

9、修改记录
 

update name set birthday='1971-01-10' where uname='张三';

 

10、删除记录
 

delete from name where uname='张三';

 

11、删除表
 

drop table 表名

 

12、删除库

 drop database 库名;

 

13、备份数据库
 

mysqldump -u root -p --opt 数据库名>备份名; //进入到库目录

 

14、恢复
 

mysql -u root -p 数据库名<备份名; //恢复时数据库必须存在,可以为空数据库

 

15、数据库授权

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

例1、增加一个用户user001密码为123456,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

 mysql> grant select,insert,update,delete on *.* to user001@"%" Identified by "123456";

 

例2、增加一个用户user002密码为123456,让此用户只可以在localhost上登录,也可以设置指定IP,并可以对数据库test进行查询、插入、修改、删除的操作 (localhost指本地主机,即MySQL数据库所在的那台主机)

        //这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过MYSQL主机来操作test库。
        //首先用以root用户连入MySQL,然后键入以下命令:

  mysql>grant select,insert,update,delete on test.* to user002@localhost identified by "123456";

 

注: 其次也可以采用修改表的方式,处理用户的登录方式:

数据库: Mysql
表:      User
修改:   User表中的Host列的值来现实登录入口
具休操作请参照:Centos 6.2 安装Mysql笔记

MySQL数据库常用操作

1、显示数据库

 show databases;

2、选择数据库

use 数据库名;

3、显示数据库中的表

show tables;

4、显示数据表的结构
 

describe 表名;

 

5、显示表中记录
 

SELECT * FROM 表名

 


6、建库

 create databse 库名;

 

7、建表
 

复制代码
create table 表名 (字段设定列表);mysql> create table name(    -> id int auto_increment not null primary key ,    -> uname char(8),    -> gender char(2),    -> birthday date );Query OK, 0 rows affected (0.03 sec)mysql> show tables;+------------------+| Tables_in_userdb |+------------------+| name             |+------------------+1 row in set (0.00 sec)mysql> describe name;+----------+---------+------+-----+---------+----------------+| Field    | Type    | Null | Key | Default | Extra          |+----------+---------+------+-----+---------+----------------+| id       | int(11) | NO   | PRI | NULL    | auto_increment || uname    | char(8) | YES  |     | NULL    |                || gender   | char(2) | YES  |     | NULL    |                || birthday | date    | YES  |     | NULL    |                |+----------+---------+------+-----+---------+----------------+4 rows in set (0.00 sec)注: auto_increment 自增     primary key    主键
复制代码

 


8、增加记录

 insert into name(uname,gender,birthday) values('张三','','1971-10-01');

 

9、修改记录
 

update name set birthday='1971-01-10' where uname='张三';

 

10、删除记录
 

delete from name where uname='张三';

 

11、删除表
 

drop table 表名

 

12、删除库

 drop database 库名;

 

13、备份数据库
 

mysqldump -u root -p --opt 数据库名>备份名; //进入到库目录

 

14、恢复
 

mysql -u root -p 数据库名<备份名; //恢复时数据库必须存在,可以为空数据库

 

15、数据库授权

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

例1、增加一个用户user001密码为123456,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

 mysql> grant select,insert,update,delete on *.* to user001@"%" Identified by "123456";

 

例2、增加一个用户user002密码为123456,让此用户只可以在localhost上登录,也可以设置指定IP,并可以对数据库test进行查询、插入、修改、删除的操作 (localhost指本地主机,即MySQL数据库所在的那台主机)

        //这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过MYSQL主机来操作test库。
        //首先用以root用户连入MySQL,然后键入以下命令:

  mysql>grant select,insert,update,delete on test.* to user002@localhost identified by "123456";

 

注: 其次也可以采用修改表的方式,处理用户的登录方式:

数据库: Mysql
表:      User
修改:   User表中的Host列的值来现实登录入口
具休操作请参照:Centos 6.2 安装Mysql笔记


linux下导入、导出mysql数据库命令

一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码

2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p -d abc > abc.sql

注:/usr/local/mysql/bin/  --->  mysql的data目录


二、导入数据库
1、首先建空数据库
mysql>create database abc;

2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql

建议使用第二种方法导入。

注意:有命令行模式,有sql命令


转自:http://www.cnblogs.com/xdpxyxy/archive/2012/11/16/2773662.html

http://www.cnblogs.com/jiunadianshi/archive/2011/04/20/2022334.html

原创粉丝点击