




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
注意命令:多行命令输入:注意不能将单词断开;每条语句输入完毕后要在末尾填加分号;,或者填加g也可以; 一、mysql服务的启动和停止net start mysqlnet stop mysql二、mysql登陆/退出mysql -uroot -ppwmysql -uroot -p,回车后输入密码pw,再回车进入注意:如果连接到另外的机器上,则加入一个参数-h机器IPmysql quit; /退出三、mysql用户管理说明:数据库安装后缺省有两个数据库mysql和test;mysql存放mysql的系统和用户权限信息,我们改密码和新增用户,实际就是对这个库进行操作。1.增加新用户grant 权限 on 数据库.* to 用户名登录主机 identified by 密码 例如:增加一个用户test密码为123456,让其可以在本机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先以root用户进入mysql,然后键入命令:grant select,insert,update,delete on *.* to testlocalhost Identified by 123456;如果希望该用户能够在任何机器上登陆mysql,则将localhost改为 % 。如果你不想test有密码,键入命令:grant select,insert,update,delete on mydb.* to user1localhost identified by ;注:全局管理权限:FILE: 在MySQL服务器上读写文件。PROCESS: 显示或杀死属于其它用户的服务线程。RELOAD: 重载访问控制表,刷新日志等。SHUTDOWN: 关闭MySQL服务。数据库/数据表/数据列权限:ALTER: 修改已存在的数据表(例如增加/删除列)和索引。CREATE: 建立新的数据库或数据表。DELETE: 删除表的记录。DROP: 删除数据表或数据库。INDEX: 建立或删除索引。INSERT: 增加表的记录。SELECT: 显示/搜索表的记录。UPDATE: 修改表中已存在的记录。特别的权限:ALL: 允许做任何事(和root一样)。也写作all privilegesUSAGE: 只允许登录-其它什么也不允许做。2.修改密码方式一:格式:mysqladmin -u用户名 -p旧密码 password 新密码 (不建议使用,修改后数据库无法访问)方式二:mysql use mysql;mysql update User set password=password(123456) where User=root;mysql flush privileges; 3.删除用户mysql delete from mysql.user where user=test;mysql flush privileges; 4.其他管理查询时间:select now(); 查询当前用户:select user(); 查询数据库版本:select version(); 查询当前使用的数据库:select database(); 四、操作数据库1.显示数据库列表mysql show databases; 2.显示库中的数据表mysql use 库名;mysql show tables;3.显示数据表的结构mysql use 库名;mysql describe 表名; 或者 show columns from 表名; 4.建库与删库mysql create database 库名;mysql create database if not exists 库名; /创建前检查是否存在库mysql drop database 库名;5.建表与删表、修改表mysql use 库名;mysql create table if not exists 表名(); /创建前检查是否存在表mysql create table 表名(字段1 类型1(长度),字段2 类型2(长度) );mysql create table 目的表 select * from 源表 where 11; /复制表的结构mysql create table 目的表 select * from 源表; /复制表mysql drop table 表名;mysql alter table 旧表名 rename as 新表名; /修改表名mysql alter table 表名 add column 字段名1 数据类型,add columns 字段名2 数据类型; /添加字段mysql alter table 表名 change column 旧字段名 新字段名 数据类型; /修改字段和数据类型mysql alter table 表名 drop column 字段名; /删除字段mysql alter table 表名 modify 字段名 数据类型; /只修改字段数据类型6.查找插入更新删除数据mysql use 库名;mysql select * from 表名 where 条件;Commonly used:sql=select * from 表名 where 字段名=字段值 order by 字段名 descsql=select * from 表名 where 字段名 like %字段值% order by 字段名 descsql=select top 10 * from 表名 where 字段名 order by 字段名 descsql=select * from 表名 where 字段名 in (值1,值2,值3)sql=select * from 表名 where 字段名 between 值1 and 值2mysql insert into 表名(字段列表) values(值列表);Commonly used:sql=insert into 表名 (字段1,字段2,字段3 ) valuess (值1,值2,值3 )sql=insert into 目标数据表 select * from 源数据表 (把源数据表的记录添加到目标数据表)mysql update 表名 set 字段名=字段值 where 条件;Commonly used:sql=update 表名 set 字段名=字段值 where 条件表达式sql=update 表名 set 字段1=值1,字段2=值2 字段n=值n where 条件表达式mysql delete from 表名 where 条件;Commonly used:sql=delete from 表名 where 条件表达式sql=delete from 表名 (将表所有记录删除)7.数据记录统计函数:AVG(字段名) 计算该字段筛选记录的平均值COUNT(*|字段名) 统计该字段筛选记录的记录行数MAX(字段名) 获取该字段筛选记录的最大值MIN(字段名) 获取该字段筛选记录的最小值SUM(字段名) 计算该字段筛选记录的和值例:sql=select sum(字段名) as 别名 from 数据表 where 条件表达式 其它函数运用类似。8.索引创建删除mysql alter table 表名 add index 索引名 (索引字段); /建立索引mysql create index 索引名 on 表名 (索引字段); /建立索引mysql create unique index 索引名 on 表名 (索引字段);/建立唯一性索引 mysql drop index 索引名 on 表名; /删除索引mysql alter table 表名 drop index 索引名; /删除索引; 9.其他a).联合字符或者多个列(将列id与:和列name和=连接): select concat(id,:,name,=) from students; b).replaced的替代用法:eg:将表 jitenant 里面的 eidb_url 字段中包含的 192.168.0.155 替换为 127.0.0.1。update jitenant set eidb_url=replace(eidb_url,192.168.0.155,127.0.0.1)c).limit用法: select * from students order by id limit 9,10; (筛选id大于9的10条记录,若10改为-1则筛选大于9的所有记录)d).创建临时表:create temporary table 临时表名(字段列表);其它: show processlist;列出每一笔联机的信息。 show varlables;列出mysql的系统设定。 show tables from db_name;列出db_name中所有数据表; show full columns from table_name;列出table_name中完整信息,如栏名、类型,包括字符集编码。 show index from table_name; 列出table_name中所有的索引。 show table status;;列出当前数据库中数据表的信息。 show table status from db_name;;列出当前db_name中数据表的信息。 alter table table_name engine innodb|myisam|memory ;更改表类型 explain table_name / describe table_name ; 列出table_name完整信息,如栏名、类型。 show create table table_name 显示当前表的建表语句 alter table table_name add primary key (picid) ; 向表中增加一个主键 alter table table_name add column userid int after picid 修改表结构增加一个新的字段 alter table table_name character set gb2312 改变表的编码 select user(); 显示当前用户。 select password(root); 显示当前用户密码 select now(); 显示当前日期 flush privileges 在不重启的情况下刷新用户权限 mysqld default-character-set=gb2312 ;设置默认字符集为gb2312 五、数据库备份(导出和导入数据)导出数据:mysqldump -opt -uroot -p123456 -databases test test.sql(test.txt)导入数据:导入.sql文件命令(d:test.sql)mysqluse database;mysqlsource d:test.sql;导入文本文件命令(d:test.txt)mysqlimport -uroot -p123456 d:test.txt或者mysql -uroot -p123456 test22 use 库名;mysql load data local infile 文件名 into table 表名;(文件名包含路径:D:test.txt)六、mysql数据库的优化1、使用索引的缺点 1)减慢增删改数据的速度; 2)占用磁盘空间; 3)增加查询优化器的负担; 当查询优化器生成执行计划时,会考虑索引,太多的索引会给查询优化器增加工作量,导致无法选择最优的查询方案; 2、分析索引效率 方法:在一般的SQL语句前加上explain; 分析结果的含义: 1)table:表名; 2)type:连接的类型,(ALL/Range/Ref)。其中ref是最理想的; 3)possible_keys:查询可以利用的索引名; 4)key:实际使用的索引; 5)key_len:索引中被使用部分的长度(字节); 6)ref:显示列名字或者const(不明白什么意思); 7)rows:显示MySQL认为在找到正确结果之前必须扫描的行数; 8)extra:MySQL的建议; 3、使用较短的定长列 1)尽可能使用较短的数据类型; 2)尽可能使用定长数据类型; a)用char代替varchar,固定长度的数据处理比变长的快些; b)对于频繁修改的表,磁盘容易形成碎片,从而影响数据库的整体性能; c)万一出现数据表崩溃,使用固定长度数据行的表更容易重新构造。使用固定长度的数据行,每个记录的开始位置都是固定记录长度的倍数,可以很容易被检测到,但是使用可变长度的数据行就不一定了; d)对于MyISAM类型的数据表,虽然转换成固定长度的数据列可以提高性能,但是占据的空间也大; 4、使用not null和enum 尽量将列定义为not null,这样可使数据的出来更快,所需的空间更少,而且在查询时,MySQL不需要检查是否存在特例,即null值,从而优化查询; 如果一列只含有有限数目的特定值,如性别,是否有效或者入学年份等,在这种情况下应该考虑将其转换为enum列的值,MySQL处理的更快,因为所有的enum值在系统内都是以标识数值来表示的; 5、使用optimize table 对于经常修改的表,容易产生碎片,使在查询数据库时必须读取更多的磁盘块,降低查询性能。具有可变长的表都存在磁盘碎片问题,这个问题对blob数据类型更为突出,因为其尺寸变化非常大。可以通过使用optimize table来整理碎片,保证数据库性能不下降,优化那些受碎片影响的数据表。 optimize table可以用于MyISAM和BDB类型的数据表。实际上任何碎片整理方法都是用mysqldump来转存数据表,然后使用转存后的文件并重新建数据表; 6、使用procedure analyse() 可以使用procedure analyse()显示最佳类型的建议,使用很简单,在select语句后面加上procedure analyse()就可以了;例如: select * from students procedure analyse(); select * from students procedure analyse(16,256); 第二条语句要求procedure analyse()不要建议含有多于16个值,或者含有多于256字节的enum类型,如果没有限制,输出可能会很长; 7、使用查询缓存 1)查询缓存的工作方式: 第一次执行某条select语句时,服务器记住该查询的文本内容和查询结果,存储在缓存中,下次碰到这个语句时,直接从缓存中返回结果;当更新数据表后,该数据表的任何缓存查询都变成无效的,并且会被丢弃。 2)配置缓存参数: 变量:query_cache _type,查询缓存的操作模式。有3中模式,0:不缓存;1:缓存查询,除非与select sql_no_cache开头;2:根据需要只缓存那些以select sql_cache开头的查询;query_cache_size:设置查询缓存的最大结果集的大小,比这个值大的不会被缓存。 8、调整硬件 1)在机器上装更多的内存; 2)增加更快的硬盘以减少I/O等待时间; 寻道时间是决定性能的主要因素,逐字地移动磁头是最慢的,一旦磁头定位,从磁道读则很快; 3)在不同的物理硬盘设备上重新分配磁盘活动; 如果可能,应将最繁忙的数据库存放在不同的物理设备上,这跟使用同一物理设备的不同分区是不同的,因为它们将争用相同的物理资源(磁头)。六、其他1.mysql jdbc连接url(使用中文)jdbc:mysql:/localhost/test?useUnicode=true&characterEncoding=gb2312 七、Linux操作系统mysql部分讲解:(一)linux操作系统下mysql几个重要的目录:1.数据库目录:/var/lib/mysql/ 2.配置文件:/usr/share/mysql (mysql.server命令及配置文件)3.相关命令:/usr/bin (mysqladmin、mysqldump等命令) 4.启动脚本:/etc/rc.d/init.d/ (启动脚本文件mysql的目录) (二)linux下启动与停止1.启动:roottest1 init.d# /etc/init.d/mysql start 2.停止:roottest1 init.d# /usr/bin/mysqladmin -u root -p shutdown 3.自动启动:1)察看mysql是否在自动启动列表中:roottest1 local#/sbin/chkconfig list 2)把MySQL添加到你系统的启动服务组里面去:roottest1 local#/sbin/chkconfig addmysql 3)把MySQL从启动服务组里面删除:roottest1 local#/sbin/chkconfig delmysql (三)更改MySQL目录 MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步: 1、home目录下建立data目录 cd /home mkdir data 2、把MySQL服务进程停掉: mysqladmin -u root -p shutdown 3、把/var/lib/mysql整个目录移到/home/data mv /var/lib/mysql/home/data/ 这样就把MySQL的数据文件移动到了/home/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 时间管理学全套课件
- 琥珀创意画课件
- 时间像小马车歌曲课件
- 二零二五年度高端冷链物流货物运输服务合同
- 2025版电梯门禁系统升级与维护服务合同
- 2025版能源供应与分销合作协议范本
- 2025版环卫工人岗位技能培训与劳动合同
- 二零二五年度二手设备买卖协议书及二手设备租赁合同
- 二零二五年高空作业墙面粉刷及安全协议
- 2025版广告策划执行公司员工劳动合同标准范本
- GIS产品维护检修
- 2023年临沧市市级单位遴选(选调)考试题库及答案
- GSP兽药经营质量管理制度
- 试模报告单模板
- 建设工程质量检测见证取样员手册
- 公司介绍-校园招聘-北汽
- 五年级上册数学练习题-数学好玩 图形中的规律|北师大版 含答案
- GB/T 16886.18-2011医疗器械生物学评价第18部分:材料化学表征
- 《活着》读书分享优秀课件
- 微型桩施工方案
- 《一站到底》答题库大全之一(共800题)
评论
0/150
提交评论