mysql数据库技巧_MySQL数据库常用操作和技巧
MySQL数据库可以说是DBA们最常见和常用的数据库之一,MySQL的广泛应用,也使更多的人加入到学习它的行列之中。下面是老MySQL DBA总结的MySQL数据库最常见和最常使用的一些经验和技巧,分享给大家!
一、MySQL数据库的备份
使用MySQL数据库,最常用也是最重要的就是数据库备份了,所以我们先介绍数据库备份。进行数据库备份,又很正规的数据库备份方法,同其他的数据库服务器有相同的概念,但有没有想过,MySQL会有更简捷的使用文件目录的备份方法,而且又快有好(这个方法没有得到官方正式文档的验证,我们暂称为试验吧)。
目的:备份hostA主机中一个mysql数据库TestA,并恢复到到hostB机中。
试验环境:
操作系统:win7,Mysql 5.1.50
在hostA中安装mysql数据库并建立TestA数据库;
hostB机安装mysql数据库,没有TestA数据库。
方法步骤:
1、启动phpMyAdmin察看HostA和HostB中的数据库列表,在HostB中没有TestA数据库;
2、找到HostA中mysql的安装目录,并找到数据库目录data;
3、在我的试验环境中,这个目录是C:mysqldata;
4、找到对应数据库名称的子目录C:mysqldataTestA;
5、粘贴拷贝到HostB的Data目录下,是HostA同HostB Mysql数据目录下的文件相同;
6、刷新HostB的phpMyAdmin察看一下数据库列表,我们看到TestA已经出现,并且作查询修改等操作都正常,备份恢复恢复成功。
试验结论:Mysql的数据库可以通过文件形式保存、备份、恢复,只要将相应文件目录恢复即可,无需使用其它工具备份。
二、连接MySQL
格式: mysql -h主机地址 -u用户名 -p用户密码
1、连接到本机上的MYSQL。
首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令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可以不用加空格,其它也一样)
3、退出MYSQL命令: exit (回车)。
三、操作技巧
1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就完成。
2、你可以使用光标上下键调出以前的命令。但以前我用过的一个MySQL旧版本不支持。我现在用的是mysql-3.23.27-beta-win。
四、显示命令
1、显示数据库列表:
show databases;
刚开始时才两个数据库:mysql和test。MySQL库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
2、显示库中的数据表:
use mysql; //打开库,学过FOXBASE的一定不会陌生吧
show tables;
3、显示数据表的结构:
describe 表名;
4、建库:
create database 库名;
5、建表:
use 库名;
create table 表名 (字段设定列表);
6、删库和删表:
drop database 库名;
drop table 表名;
7、将表中记录清空:
delete from 表名;
8、显示表中的记录:
select * from 表名;
五、一个建库和建表以及插入数据的实例
drop database if exists school; //如果存在SCHOOL则删除
create database school; //建立库SCHOOL
use school; //打开库SCHOOL
create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default ’深圳’,
year date
); //建表结束
//以下为插入字段
insert into teacher values(’’,’glchengang’,’深圳一中’,’1976-10-10’);
insert into teacher values(’’,’jack’,’深圳一中’,’1975-12-23’);
注:在建表中(1)将ID设为长度为3的数字字段:int;(2)并让它每个记录自动加一:auto_increment并不能为空:not null而且让他成为主字段primary key;(3)将NAME设为长度为10的字符字段;(4)将ADDRESS设为长度50的字符字段,而且缺省值为深圳。varchar和char有什么区别呢,只有等以后的文章再说了;(5)将YEAR设为日期字段。
如果你在MySQL提示符键入上面的命令也可以,但不方便调试。你可以将以上命令原样写入一个文本文件中假设为school.sql,然后复制到c:\\下,并在DOS状态进入目录\\mysql\\bin,然后键入以下命令:
mysql -uroot -p密码 《 c:\\school.sql
如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉即可使用)。
六、修改密码
格式:mysqladmin -u用户名 -p旧密码 password 新密码
1、给root加个密码ab12。首先在DOS下进入目录mysqlbin,然后键入以下命令:
mysqladmin -uroot -password ab12
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、再将root的密码改为djg345。
mysqladmin -uroot -pab12 password djg345
七、增加新用户。
(注意:和上面不同,下面的因为是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。
例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 \“\”;
mysql数据库技巧_MySQL数据库常用操作和技巧相关推荐
- mysql全表重命名备份_Mysql数据库和表的常用操作以及数据备份恢复
数据库 查看所有数据库 show databases; 使用数据库 use 数据库名; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名 ...
- mysql入门优化_MySQL数据库:MySQL十大优化技巧详解
本文主要向大家介绍了MySQL数据库的MySQL十大优化技巧详解,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. WEB开发者不光要解决程序的效率问题,对数据库的快速访问和相应也是 ...
- mysql设备台账_mysql数据库操作语句大全.pdf
mysql数据库操作语句大全.pdf mysql数据库操作语句大全(常用操作指令)一 . 常用mysql命令行命令1.启动MYSQL服务 netstartmysql停止MYSQL服务 stat na| ...
- 连接mysql数据库字符串_MySQL数据库中怎么将字符串连接操作
MySQL数据库中怎么将字符串连接操作 发布时间:2020-11-30 09:54:14 来源:亿速云 阅读:68 作者:小新 小编给大家分享一下MySQL数据库中怎么将字符串连接操作,相信大部分人都 ...
- mysql数据库视图_MySQL数据库应用总结(九)—MySQL数据库视图的操作
SQL语法预览: 创建视图:[create [or replace] [algorithm={undefined | merge | temptable}] view 视图名称(属性列) as sel ...
- mysql数据库核对_Mysql数据库操作总结
1: 部署数据库服务:mariadb --- yum install -y mariadb(操作数据库命令) mariadb-server 启动数据库服务:systemctl st ...
- mysql数据库语法_MySQL数据库基本语法
SQL WHAT(SQL是什么?) Structured Query Language:结构化查询语⾔ WHY(为何要使用SQL?) 难道仅仅使用SQL Server Management Studi ...
- mysql删除原则_MySQL数据库的增删选查
数据库是专门存储数据对象的容器,这里的数据对象包括表.视图.触发器.存储过程等,其中表是最基本的数据对象. 创建数据库 在 MySQL 数据库中存储数据对象之前,先要创建好数据库. 语法: creat ...
- mysql数据库财务_MySQL数据库——从入门到删库跑路(二)
DQL 查询表中的记录 select .... from ..... 语法 select 需要查询的信息(列名1,列名2,.......列名n) / * from 表名 [where 条件]; 完善下 ...
- mysql数据库应用_MySQL数据库应用 从入门到精通 学习笔记
以下内容是学习<MySQL数据库应用 从入门到精通>过程中总结的一些内容提要,供以后自己复现使用. 一:数据库 查看所有数据库:SHOW DATABASES 创建数据库:CREATE DA ...
最新文章
- ruby中取反的问题
- 任正非说到做到:华为正与美企谈判,授权转让5G技术
- poj 1958 Strange Towers of Hanoi
- ubuntu16 php mysql_Ubuntu16.04 搭建 LAMP(Ubuntu16.04 、apache 2.4.18、MySQL 5.7.22、PHP 7.0.28)...
- 科大星云诗社动态20211102
- HBase shell 中的十六进制数值表示
- Linux(fedora 10)Hello World模块
- java.util.concurrent.RejectedExecutionException
- php分流短信服务商,使用第三方短信服务商云片发送短信(php样例)
- [bzoj2242] [SDOI2011]计算器
- Spring 源码分析(四) ——MVC(六)M 与 C 的实现
- 期中HTML代码及技术博客
- VS2010 发布网站总是连同cs文件一起发布了
- 数据库基础(2):简单查询和连接查询
- 《OpenCV3编程入门》学习笔记九:直方图与匹配
- PDMS二次开发(二十)——关于1.0.2.0版本升级内容的说明
- 谈谈成功,你离成功有多远?施瓦辛格励志演讲分享(配中文翻译)
- python中的reshape是什么意思,Python的reshape的用法
- GCC 中的 aligned 和 packed 属性(关于地址对齐)
- 导热电池粘合剂市场现状及未来发展趋势