1-1.创建、登陆、查看、退出(数据库)、导入导出(数据库、表)以及授权指令

只有链接了数据库才可以执行SQL语句

 

连接PostgreSQL(登录)

调出命令提示符,输入指令:C:\PostgreSQL\9.5\bin\psql.exe –U postgres  (输入指令回车后就会在命令提示符 窗口显示出“postgres=#”,意味着连接成功了)

 

创建数据库

在登录PostgreSQL后,输入指令:CREATE DATABASE shop;   (shop是创建数据库的名字,输入指令回车后就会在命令提示符 窗口显示出“CREATE DATABASE”,意味着创建成功了)

 

 

 

结束PostgreSQL

在登录PostgreSQL后,输入指令:\q  (“\q” 中的 q 是“quit”(退出)的缩写,输入指令回车就会退出PostgreSQL)

 

连接数据库

调出命令提示符,输入指令:C:\PostgreSQL\9.5\bin\psql.exe –U postgres –d shop (“-d shop”是指定“数据库 shop”的意思,输入指令回车后就会在命令提示符 窗口显示出“shop=#”,意味着连接成功了)

 

 

 

连接MySQL:mysql -hlocalhost -uroot -p(密码)

查看诠数据库管理系统中所有的数据库:show databases;

查看所bjpowernode数据库中的所有表格(前提先进入数据库):show tables;

查看描述表的结构:desc 表名;

查看表的创建询句:show create table 表名称;

查看MySQL版本:dos命令窗口下输入(不要进入mysql):mysql --version  或者  mysql -V

查看当前使用数据库:select database ();

查看MySQL数据库版本:select version();

如果想要终止一条SQL询句,可输入\c;

退出MySQL:可使用exit、\q戒exit;最方便快捷的是crtl+c

创建数据库:create database 数据库名字 character set utf8; 

进入数据库:use 数据库名字;

 

 

导入导出(数据库、表)*导出时文件名随便写,不会影响库和表的名字

导出:mysqldump 导出整个数据库(在dos命令下,win键+R,窗口输入:cmd)

导出库命令:mysqldump 数据库名称 >要导出的地址 要导出的文件名.sql -uroot -p密码

例:C:\Users\呆呆>mysqldump haha >C:\Users\呆呆\Desktop\新建文件夹\练习60.sql -uroot -proot

导出表命令:mysqldump 数据库名称 表名 >要导出的地址 要导出的文件名.sql -uroot -p密码

例:C:\Users\呆呆>mysqldump haha emp >C:\Users\呆呆\Desktop\新建文件夹\练习60.sql -uroot -proot

 

导入:source 登录MySQL数据库管理系统后执行: mysql> source C:\Users\呆呆\Desktop\新建文件夹\练习60.sql

直接输入source后面加个空格然后直接将文件拖拽进来即可

 

MySQL导出

一、使用mysqldump命令导出:

注意:执行: mysqldump命令,如果/usr/bin目录下没有该命令则需要进入mysql安装目录bin下面执行。

 

1.导出该库全部表结构与表数据

#语法: mysqldump -u 用户名-p 数据库名  --default-character-set=utf8 > 导出路径/导出文件名

#示例: 用root用户以utf8编码格式导出数据库pengke到F盘目录下,导出文件名为pengke.sql

   mysqldump -u root -p pengke --default-character-set=utf8 >F:/pengke.sql

 

2.只导出数据库函数与过程

#语法: mysqldump -u 用户名 -p -ntd -R  数据库名 >  导出路径/导出文件名

#其中的 -ntd 是表示导出存储过程;-R是表示导出函数

#示例: 用root用户导出数据库pengke下的存储过程函数到F盘目录下,导出文件名为pengke_fun.sql

   mysqldump -u root -p -ntd -R  pengke >F:/pengke_fun.sql

 

3.导出指定表的结构与数据(单表)

#语法: mysqldump -u 用户名 -p 数据库名 表名 > 导出路径/文件名

#示例: 导出数据库pengke中的user表

   mysqldump -u root -p pengke user > F:/user.sql

 

 

4.导出指定表的结构与数据(多表)

#语法: mysqldump -u 用户名 -p 数据库名 表1 表2 表3> 文件名

#  多张表名用空格隔开

#示例: 导出数据库pengke中的pserson,dept表

   mysqldump -u root -p pengke pserson dept > F:/user2.sql

 

5.只导出事件

#示例

    mysqldump -E -ndt test -u root -p > F:/my_event.sql

 

MySQL导入

一、使用source命令导入:

1.选择数据库

   mysql>use test1;

 

2.设置数据库编码

   mysql>set names utf8;

 

3.导入数据(注意sql文件的路径)

   mysql>source /home/abc/abc.sql;

 

 

 

DBA命令 

 新建用户 

CREATE USER username IDENTIFIED BY 'password'; 

username:你将创建的用户名,
password:该用户的登陆密码,密码可以为空,如果为空则该用户可以丌需要密码登陆服务器.
示例:
create user p361 identified by '123'; --可以登录但是叧可以看见一个库 information_schema

 

 授权 

命令详解 

示例:grant all privileges on dbname.tbname to 'username'@'login ip' identified by 'password' with grant option;
1) dbname=*表示所有数据库
2) tbname=*表示所有表
3) login ip=%表示任何ip
4) password为空,表示丌需要密码即可登录
5) with grant option; 表示该用户还可以授权给其他用户
细粒度授权
1、首先以root用户迚入mysql
2、然后键入命令:grant select,insert,update,delete on *.* to p361 @localhost Identified by "123";
3、如果希望该用户能够在任何机器上登陆mysql,则将localhost改为 "%" 。

粗粒度授权
我们测试用户一般使用该命令授权:
GRANT ALL PRIVILEGES ON *.* TO 'p361'@'%' Identified by "123"; 注意:用以上命令授权的用户丌能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT ALL PRIVILEGES ON *.* TO 'p361'@'%' Identified by "123" WITH GRANT OPTION;
用户权限privileges包括:
1) alter:修改数据库的表
2) create:创建新的数据库戒表
3) delete:删除表数据
4) drop:删除数据库/表
5) index:创建/删除索引
6) insert:添加表数据
7) select:查询表数据
8) update:更新表数据
9) all:允许任何操作
10) usage:叧允许登录

 

回收授权 

命令详解 

revoke privileges on dbname[.tbname] from username;
revoke all privileges on *.* from p361;

use mysql select * from user 迚入 mysql库中
修改密码;

update user set password = password('qwe') where user = 'p646';

刷新权限;
flush privileges

 

posted @ 2019-05-22 09:58  阿璗  阅读(2220)  评论(0编辑  收藏  举报