mysql使用

  • 环境变量配置
  • dos|shell窗口常用语句
  • 启动数据库
  • 登录
  • 查看数据库列表
  • 切换数据库&查看当前数据库
  • 查看、创建、授权、删除用户
  • 创建数据库
  • 创建表
  • 导入导出数据库
  • workbench使用
  • mysql workbench使用教程
  • 数据库的导入导出
  • 数据类型
  • char和varchar的区别
  • 数据类型字节数


环境变量配置

mysql安装位置

mysqlsql教程 mysql详细教程_sql


环境变量设置

ps:不设置环境变量在dos窗口下一些命令无法操作,如导出备份数据命令mysqldump;

C:\Program Files\MySQL\MySQL Utilities 1.6\;
C:\Program Files\MySQL\MySQL Server 5.7\bin

mysqlsql教程 mysql详细教程_sql_02

dos|shell窗口常用语句

启动数据库

mysqld_safe

登录

MySQL -uroot -p  //本地
mysql -uroot -proot -h192.168.0.333 -P3306   --提示:不要加; (mysql -u用户名 -p密码 -h 远程主机 -P数据库端口)

查看数据库列表

show databases;

切换数据库&查看当前数据库

use [databasename];
select database();//查看当前数据库

查看、创建、授权、删除用户

  1. 用有创建用户权限的用户登录
mysql -u username -p
select user();//查看当前用户
  1. 创建用户
create user 'test'@'localhost' identified by '123456';
// 创建用户
CREATE user '[用户名]'@'localhost'(本地访问Only) / '[用户名]'@'%'(可以外部访问) IDENTIFIED BY '[密码]';
  1. 授权
mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;
权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。
‘连接口令’不能为空,否则创建失败。

mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。

mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。

mysql>grant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
// 授权后立即启用修改
FLUSH PRIVILEGES;
// 取消用户的所有数据库(表)的所有权限授权
REVOKE ALL ON *.* FROM [用户名];
  1. 查看用户权限
select * from mysql.user;	//对全局范围的权限
select * from mysql.db;		//对某个数据库的权限
  1. 删除用户
// 删除用户
DELETE FROM mysql.user WHERE user='[用户名]';
//删除用户时safe-updates模式提示错误,进行如下设置
show variables like 'SQL_SAFE_UPDATES';查看开关状态
SET SQL_SAFE_UPDATES = 0;修改下数据库模式
//删除用户用户信息可能留在缓传中,可以刷新以使删除立即生效
FLUSH PRIVILEGES;

创建数据库

CREATE DATABASE database_name

创建表

CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

导入导出数据库

window下

1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u dbuser -p dbname > dbname.sql

2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u dbuser -p dbname users> dbname_users.sql

3.导出一个数据库结构
mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

4.导入数据库
常用source 命令
进入mysql数据库控制台,如
mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:/dbname.sql

 

 

1. 导入数据到数据库

mysql -uroot -D数据库名 

1. 导入数据到数据库中得某个表

mysql -uroot -D数据库名  表名

 

D:\APMServ5.2.6\MySQL5.1\bin>mysqldump -u root -p  erp lightinthebox_tags > ligh
tinthebox.sql

 

linux下

一、导出数据库用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

workbench使用

mysql workbench使用教程

mysql workbench使用教程 note:创建数据库时,如果没有创建权限会提示失败信息。
查看是否有创建数据库的权限:

select * from mysql.user;

mysqlsql教程 mysql详细教程_数据库_03

数据库的导入导出

数据库导入导出

数据类型

char和varchar的区别

char和varchar的区别

数据类型字节数

数据类型字节数