关于sql:Linux中MySQL的常用命令

30次阅读

共计 1845 个字符,预计需要花费 5 分钟才能阅读完成。

我的博客

登录

mysql - u 用户名 -p
-- 而后在上面输出明码,Linux 的明码不会显示出,盲打就能够
mysql - u 用户名 - p 明码
-- 这种形式将间接登录

开关

开启数据库

service mysql start

我这里没加分号,要是终端运行命令,记得结尾加上 ; 不然就可能呈现如下后果。

敞开数据库

service mysql stop

重启数据库

service mysql restart

罕用操作

显示数据库列表

show databases;

创立、删除数据库

create database 数据库名;
​
drop database 数据库名;

显示库中的数据表

use mysql;
​
show tables;

显示数据表构造

describe 数据表名;

批改明码

SET PASSWORD 命令(需登录)

mysql> set password for 用户名 @localhost = password('新密码');

应用 sql 语句更新 mysql 库中的 user 表(需登录)

mysql> use mysql; 
mysql> update user set password=password('123') where user='root' and host='localhost'; 
mysql> flush privileges;

mysqladmin 命令,明文(不需登录)

mysqladmin - u 用户名 - p 旧明码 password 新密码

命令,密文(不需登录)

mysqladmin - u 用户名 - p 旧明码 password+ 回车,而后输出两次新密码

其余命令

导入、导出数据库(不需登录)

导出所有数据库
mysqldump - u 用户名 - p 明码 --all-databases > 导出门路
导出指定数据库
mysqldump - u 用户名 - p 明码 --databases 数据库名 > 导出门路
导出指定数据库的构造(无数据)
语法:mysqldump - u 用户名 - p 明码 --no-data --databases 数据库名 > 导出门路
举例:mysqldump -uroot -p123456 --no-data --databases testdatebase >/tmp/testdatebase_no_data.sql
导出指定数据库中的指定表
语法:mysqldump - u 用户名 - p 明码 --databases 数据库名 --tables 数据表名 > 导出门路
举例:mysqldump -uroot -p123456 --databases testdatebase --tables t_user >/tmp/testdatebase_user.sql
导出指定数据库中的指定表的构造(无数据)
语法:mysqldump - u 用户名 - p 明码 --no-data --databases 数据库名 --tables 数据表名 > 导出门路
举例:mysqldump -uroot -p123456 --no-data --databases testdatebase --tables t_user >/tmp/testdatebase_user_no_data.sql
导出指定数据库中的指定表,设置查问条件
语法:mysqldump - u 用户名 - p 明码 --databases 数据库名 --tables 数据表名 --where='条件'> 导出门路

举例:mysqldump -uroot -p123456 --databases testdatebase --tables t_user --where='user_no=1'>/tmp/mysql_user_no.sql
跨服务器备份数据库
-- 将 host1 服务器中的 db1 数据库的所有数据导入到 host2 中的 db2 数据库中,db2 的数据库必须存在否则会报错
-- (经测试,在 mysql5.5 版本中,db2 存在即可,理论生成数据库名称与 db1 统一;加上 - C 参数能够启用压缩传递)语法:mysqldump --host=host1 - u 用户名 - p 明码 --databases db1 |mysql --host=host2 - u 用户名 - p 明码 --databases db2
举例:mysqldump --host=192.168.1.101 -uroot -p123456 -C --databases testdatebase |mysql --host=192.168.3.102 -uroot -p123456 --database testdatebase
通过 sql 文件导入数据库
语法:mysql - u 用户名 - p 明码 < 导入门路
举例:mysql -uroot -p123456 < /tmp/testdatebase.sql

注:局部摘自博客园

正文完
 0