Mysql在Linux的基本操作文档
总结了Mysql在Linux下的应用,以下是Linux操作系统操作MySQL常用命令小结,需要的朋友参考下:
1、Mysql服务
# chkconfig --list 列出所有系统服务
# chkconfig --list | grep on 列出所有启动的系统服务
# chkconfig --list mysqld
# whereis mysql 查看文件安装路径
# which mysql 查询运行文件所在路径(文件夹地址) usr/bin/mysql 是指:mysql的运行路径
var/lib/mysql 是指:mysql数据库文件的存放路径
usr/lib/mysql 是指:mysql的安装路径
2、环境变量
# vi /etc/profile
# export MYSQL_HOME=/usr/local/mysql
# export PATH=$PATH:$MYSQL_HOME/bin
3、数据库启动指令
#启动mysql的命令
. mysqladmin start
. /ect/init.d/mysql start (前面为mysql的安装路径)
. service mysqld start #重启mysql的命令
. mysqladmin restart
. /ect/init.d/mysql restart (前面为mysql的安装路径)
. service mysqld restart #停止mysql的命令
. mysqladmin shutdown
. /ect/init.d/mysql shutdown (前面为mysql的安装路径)
. service mysqld stop
4、Mysql基本信息查看
-- 查询时间
select now();
-- 查询用户
select user();
-- 查询数据库版本
select version();
-- 查询当前使用的数据库
select database();
5、连接数据库
mysql -h 主机地址 -u用户名 -p用户密码
--例1:首先在打开DOS窗口,然后进入目录 /mysql/bin,再键入命令
mysql -uroot -p
--回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:
mysql>
--例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
mysql -h110.110.110.110 -uroot -pabcd123
--(注:u与root可以不用加空格,其它也一样)
--退出MYSQL命令:
exit (回车)。
6、修改密码
mysqladmin -u用户名 -p旧密码 password 新密码
--例1:给root加个密码ab12。首先在DOS下进入目录mysqlbin,然后键入以下命令:
mysqladmin -uroot -password ab12
--注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
--例2:再将root的密码改为djg345。
mysqladmin -uroot -pab12 password djg345
7、添加新用户
(注意:和上面不同,下面的因为是MySQL环境中的命令,所以后面都带一个分号作为命令结束符)
grant select on 数据库.* to 用户名@登录主机 identified by \"密码\"
例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用 以root用户连入MySQL,然后键入以下命令:
grant select,insert,update, delete on *.* to test1@\"%\" Identified by \"abc\";
但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的MySQL数据库并对你的数据可以为所欲为了,解决办法
例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MySQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MySQL主机上的web页来访问。
grant select,insert,update, delete on mydb.* to test2@localhost identified by \"abc\";
如果你不想test2有密码,可以再打一个命令将密码消掉。
grant select,insert,update,delete on mydb.* to test2@localhost identified by \"\";
8、数据库基本SQL语句
-- 列出数据库
show database;
-- 创建数据库
create database XXXX;
-- 选择数据库
use DatabaseName;
-- 罗列表
show tables;
-- 显示表格的属性
show columns from tablename;
-- 建立数据库
source filename.txt;
-- 增加一个字段
alter table tablename add column filename datatype;
-- 增加多个字段
alter table tablename add column filename1 datatype,add column filename2 datatype;
-- 新增一个用户
grant all on *.* to user@localhost identity by "password";
-- 删除student_course数据库中的student数据便
rm -f student_cource/student.*
-- 备份数据库(备份数据库Apple1)
MySQLdump -u root -p Apple1>C:\Apple1.txt
-- 备份表(将数据库Apple1中的mytable表备份)
MySQLdump -u root -p mytable>C:\Apple.txt
-- 创建临时表(mytable)
create temporary table mytable(id int,address varchar(20),name varchar(20));
-- 创建表前先判断系统是否存在这个表
create table if not exists mytable(......);
-- 从已有的table1表中复制表结构到table2
create table table2 select * from table1 where 1<>1;
-- 复制表
create table table2 select * from table1;
-- 重命名表名
alter table table1 rename as table2;
-- 修改列的数据类型
alter table table1 modify ID int unsigned;--把列ID的类型修改为int unsigned
alter table table1 change ID SID int unsigned; --把列ID改名为 SID且类型改为int unsigned
-- 创建索引
alter table table1 add index Ind_id (ID);
create index ind_ID on tablename (ID);
create unique index ind_id on tablename(ID);
-- 删除索引
drop index ind_id On table1;
alter table table1 drop index ind_ID;
-- 联合查询字符与多个列连接‘
select concat(ID,':',name,'=') from table1
-----------------------第二片:实践运用--------------------------------------显示数据表结构
describe tablename;
--显示表记录
select * from tablename;
--查询能操作MySQL的用户
select * from user;
--创建数据库
create database databasename
--例如↓
MySQL> create database AA;
---创建表
mysql> create table table1(ID int auto_increment not null primary key,name char(6),sex char(6),birthday date)
---插入几条记录
MySQL> insert into AA values('','张三','男','1971-10-01');
MySQL> insert into AA values('','刘佳佳','女','1978-10-01');
--查询结果
MySQL> select * from AA;
--修改张三的生日为1971-01-10
MySQL> update AA set birthday = '1971-01-10' where ID = '';
--删除记录
MySQL> delete from AA where ID = '';
--删除表以及库
mysql> drop table tablename;
MySQL> drop database databasename;
--新增万能用户
-- 格式:grant select On database.* to username@localhost identity by 'password'
用户名user_1 密码是123456
--可以自任何PC上登录这个用户对数据库为所欲为
MySQL> grant select,insert update,delete on *.* to user_1@"%" identity by "123456";
--创建只有在本机才能操作数据库的用户
用户名user_2 密码是123456
MySQL> grant select,insert update,delete on *.* to user_2@localhost identity by "123456";
--登录数据库库
MySQL> -u user_1 -p -h IP地址;
9、补充SQL语句
--limit 的使用:
select * from table_name limit 3;
--每页只显示3行
select * from table_name limit 3,4
--从查询结果的第三个开始,显示四项结果。 此处可很好的用来作分页处理。 --对查询结果进行排序:
select * from table_name order by field1,orderby field2; --多重排序--删除表中所有数据,不可恢复:
truncate table 数据表名称 --导出meeting数据库:
mysqldump -uroot -p21century meeting > db_meeting.sql
--导人dbname数据库:
mysqldump -uroot -p21century dbname < xxx.sql
--导入数据库还可用类似于oracle中@my_script.sql的方式一次执行大量sql语句,这在使用mysqldump不起作用时非常有用。
--例:#./mysql -uroot -p < /home/xuys/db_meeting_2003.sql
--(注:create database、use databasename、create table和insert into语句都可写在上面的脚步文件中)
10、将文本数据转到数据库中
文本数据应符合的格式:字段数据之间用tab键隔开,null值用\\n来代替。 例:
3 rose 深圳二中 1976-10-10
4 mike 深圳一中 1975-12-23
数据传入命令 load data local infile \"文件名\" into table 表名。
注意:你最好将文件复制到\\mysql\\bin目录下,并且要先用use命令打表所在的库。
Mysql在Linux的基本操作文档的更多相关文章
- MYSQL服务器my.cnf配置文档详解
MYSQL服务器my.cnf配置文档详解 硬件:内存16G [client] port = 3306 socket = /data/3306/mysql.sock [mysql] no-auto-re ...
- Linux的帮助文档命令
Linux的帮助文档命令 1.man page man是manual(操作手册)的简写,使用方式: man [指令] man date 在显示的内容中查找内容: / + 搜索你的关键字 上下左右键来查 ...
- [实战]MVC5+EF6+MySql企业网盘实战(23)——文档列表
写在前面 上篇文章实现了图片列表,这篇文章实现文档列表将轻车熟路,因为逻辑基本相似,只是查询条件的不同.这里将txt,doc,docx,ppt,pptx,xls,xlsx的文件都归为文档列表中. 系列 ...
- 如何在Linux中复制文档
在办公室里复印文档过去需要专门的员工与机器.如今,复制是电脑用户无需多加思考的任务.在电脑里复制数据是如此微不足道的事,以致于你还没有意识到复制就发生了,例如当拖动文档到外部硬盘的时候. 数字实体复制 ...
- Linux如何管理文档多租户
例题 同一群组microsoft下的两个账号justmine001和justmine002需要共同拥有目录/microsoft/eshop的开发权,以便进行协同工作,但是其他人不允许进入和查阅该目录. ...
- PHP在linux读取word文档
几天帮朋友解决一个技术问题,在Linux下,将word文档中的内容读取,然后使用正则匹配,拼成sql入库 查阅了外文资料和google之后,步骤如下: #wget http://www.winfiel ...
- linux 获取帮助文档
在linux中遇到命令不知道如何使用,可以用man或info来查看. man -f 与 whatis命令是相同的. man -k 与apropos命令是相同的. 而这两个命令又很类似,都是去搜索,找到 ...
- 分享一份550多个Linux命令的文档,按照命令首字母索引排序
输入一个命令,让我给你一个关于它的完美解释! 众所周知,Linux命令是IT人必须掌握的一个技能,有了它,我们可以部署和维护各种各样的服务和应用.但是,大部分的Linux命令我们不一定记得住,而别是各 ...
- python处理LINUX的PWD文档
用冒号分隔的哟. 此章后面讲的JSON,配置文件读取,原理应该一样吧,只是要用合适的包去处理吧. CSV文档是用CSV包处理的. 文档: root:x:0:0:root:/root:/bin/bash ...
随机推荐
- 【转】UGUI研究院之缓存策略让UI打开更快(三十)
UGUI研究院之缓存策略让UI打开更快(三十) [投稿]Unity3D游戏优化之头顶UI 注意里面提到了:SuperTextMesh:能渲染动态文字,富文本支持图文混排,缺点是支持atlas但很弱,资 ...
- Nginx使用GZIP来压缩网页
HTTP协议上的GZIP编码是一种用来改进web应 用程序性能的技术.大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度.这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中 ...
- 使用karma做多浏览器的UI测试
avalon1.6开发得差不多,这次使用先进的开发理念进行开发,比如模块化,单元测试什么... ui测试是重要的一环,之前用阿里的totoro,但打开浏览器不方便.于是从webdrieverio, n ...
- 如何使用JDBC删除一条记录
//根据学生id删除操作 public void deleteOne(int id) { Statement stmt=null; // 发送SQL语句,返回执行结果 ...
- JSP报错Syntax error, insert ";" to complete Statement
org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 7 in ...
- H5做的商城客户端,效果很不错
H5做的商城客户端,效果很不错 H5做的商城客户端,效果和android原生客户端没多大区别,现在h5是越来越火了, android的小伙伴们又遇到一个新的挑战了.本项目只能学习一下WebViewAc ...
- 学JS的心路历程 - PixiJS -基础(一)
建立canvas 今天开始我们一步步来看怎么使用PixiJS吧! 在开始之前,要先提醒各位需要先运行webserver,否则将会遇到一些奇怪的问题喔! 最基本的canvas画布是肯定需要的,Pixi提 ...
- Numpy知识之随机散步实例
类似于投硬币,简单的随机散步就是在前进一步(+1)和后退一步(-1)之间随机选择. 生成多个随机漫步. 并对多个随机漫步进行简单分析.
- Python中struct.pack()和struct.unpack()
https://blog.csdn.net/tjuyanming/article/details/79700601 https://www.cnblogs.com/yezl/p/5861787.htm ...
- KADEMLIA算法学习
在上一篇文章中<P2P技术是什么>,我们介绍了P2P技术的特点以及发展历史.在本篇文章中,我们来介绍某一个具体的算法. 如今很多P2P网络的实现都采用DHT的方式实现查找,其中Kademl ...