mysql使用
环境变量配置
mysql安装位置
环境变量设置
ps:不设置环境变量在dos窗口下一些命令无法操作,如导出备份数据命令mysqldump;
C:\Program Files\MySQL\MySQL Utilities 1.6\;
C:\Program Files\MySQL\MySQL Server 5.7\bin
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();//查看当前数据库
查看、创建、授权、删除用户
- 用有创建用户权限的用户登录
mysql -u username -p
select user();//查看当前用户
- 创建用户
create user 'test'@'localhost' identified by '123456';
// 创建用户
CREATE user '[用户名]'@'localhost'(本地访问Only) / '[用户名]'@'%'(可以外部访问) IDENTIFIED BY '[密码]';
- 授权
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 [用户名];
- 查看用户权限
select * from mysql.user; //对全局范围的权限
select * from mysql.db; //对某个数据库的权限
- 删除用户
// 删除用户
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;