NOVOTS KMS 词汇表 Glossary    联系我们 Contact Us
查询 Search  
   
按类别浏览 Browse by Category
NOVOTS KMS .: 数据库 .: mysql的安装于简单使用

mysql的安装于简单使用

一、如何安装mysql服务器: 我们使用当前MY-SQL的比较新的版本MY SQL 5.0版。首先,如何得到MY SQL 5.0 我们可以从网上下载(www.mysql.cn)。 我们来看一下如何进行安装MY SQL支持多平台,也就是说它可以工作在WINDWOS平台上,也可以工作在LINUX平台上,在LINUX下的安装可能会复杂那么一点点,但在 WINDOWS下的安装还是很简单的,和咱们平时安装软件没什么两样,下面咱们开始安装:我们拿到的是一个可执行文件,双击Setup.exe文件,开始 mysql5.0的安装。先是等待,直到出现下面的欢迎窗口 ********* 安装过程略! ******** 怎么检测你的mysql正确安装了。那你们是怎么检测 SQL SERVER是不是正确安装的? Netstat -an 看有没有3306口吧!或者你就去看看你的服务有没有启动! 二、登录到mysql服务器: 两种方法: 1、 mysql ?hlocalhost ?uroot ?p口令 2、 直接利用开始菜单!开始----程序---mysql5.0 三、命令的简单使用: 下面的操作一般就是使用标准SQL命令:也就是说你在SQL SERVER里面怎么用,这里就怎么用,但是有的命令也不是完全一样的。有一点点细微的差别!下面咱们就把这个命令简单的过一遍: my sql 命令的使用:以分号或\g结束,\c取消一行命令,\h帮助 1、 显示数据库:show databases; 2、 建数据库:create database [if not exists] 数据库名; 3、 建数据表: create table [if not exists] 表名 (字段名1 类型。。。。。。。。) create table student (编号 int auto_increment primary key, 姓名 varchar(10)); 注意:设置了自动增长,就要定为主键,如果选择了BIT 类型,0不显示,非0显示为一个特殊符号! 4、 显示数据表:show tables; 5、 删除库: drop database [if exists] 库名; 6、 删除表: drop table [if exists] 表名; 7、 显示表结构: desc 表名 8、 如何修改表结构:增长一个字段; alter table 表名 add 字段名 类型 9、 删除一个字段: alter table 表名 drop 字段名 10、 修改一个字段的属性: alter table 表名modify 字段 新属性 11、 修改主键: 增加一个主键 alter table 表名 add primary key(字段名) 12、 删除一个主键 alter table 表名 drop primary key(字段名) 四、表的三种基本操作: 插入记录、删除记录、更新记录、 这个和sql server是一样的,你在SQL SERVER里面怎么操作,在MYSQL里面就怎么操作!没什么大区别,当然小区别还是有的。比如;insert命令,SQL SERVER2000 一次只能插入一条记录,MYSQL可以插入多条记录。 Insert into 表 (字段表列表) values(字段值),(字段值)。。。。。。 删除,更新和SQL SERVER没有什么区别,不再累述! 13、 删除数据库:DROP DATABASE 数据库名 14、 删除表: DROP TABLE 表名 15、 表改名: RENAME TABLE 旧表中 TO 新表名 数据库不能改名,但也不是绝对不能改,但改不好会造成里面的数据无法正常读出,后果自负! 16、 库改名: 常用方法是把新库创建出来,然后把旧库里的数据导入进去. 五、查询: 这应该是SQL中的一大块。 SELECT 查询:也和SQL SERVER没有什么大差别: 关键是大家要熟练运用各种运算符,数学运算符比较简单,重点在于字符型运算符LIKE、关系运算符和逻辑运算符 如:查找姓王的记录:SELECT * FROM YUANGONG WHERE 姓名 like '王%'; 查找姓名中有五的记录:SELECT * FROM YUANGONG WHERE 姓名 like '%王%'; 查找以王结尾的记录:SELECT * FROM YUANGONG WHERE 姓名 like '%王'; 其中linit是SQL SERVER没有的。 例如:我想显示第三条到第七条记录 select * from 表名 limit 2,5; 通配符 描述 示例 % 通配零个或多个任意字符 _(下划线) 通配任意一个字符 不再含有 [ ] 不同于SQL SERVER 注意:如果用like发现结果不正确,有可能是编码的问题 六、记录排序 利用order by 对记录进行排序 格式:select 字段名列表 from 表名 [where 条件] order by 排序字段1 [asc ] [desc] [排序字段2……] 如:按年龄对yuangong表进行升序排列! Select * from yuangong order by 年龄 asc 或 select * from yuangong order by 年龄 如:按年龄对yuangong表进行降序排列! Select * from yuangong order by 年龄 desc 对员工表先按性别升序排列,性别相同的再按年龄从大到小排序 Select * from 员工表 order by 性别 asc,年龄 desc 七、聚集函数: 最大值:max() 最小值 min() 平均值avg() 求和: sum() 汇总: count () 如:求每个部门的基本工资平均值 select 部门,avg(基本工资) as 部门基本工资 from 员工表 group by 部门 显示平均基本工资大于3000的部门 Select 部门,avg(基本工资) from 员工表 group 部门 where avg(基本工资)>3000 此句错误。SQL规定在分组中使用条件不能用 WHERE 而是用 having Select 部门,avg(基本工资) from 员工表 group by 部门 having avg(基本工资)>3000 八、多表查询: 一个数据库中的多个表,存在一定的联系,怎么样正常的显示这么表的信息? 现在有三个表: yg Name sex age 宋洋 男 20 马冬旭 女 40 Gs Name title date 单位 宋洋 AD详解 2006-11-10 清华大学 马冬旭 linux 2005-01-01 人民大学 dz 单位 地址 清华大学 五道口 人民大学 黄庄 第一种方法称为:交叉连接,在SQL SERVER中又称为笛卡尔乘积 但是要注意的默认生成的记录总数是两表记录之积 select * from yg,gs; select * from yg,gs where yg.name=gs.name; 这才是我们想要的记录 第二种方法是用join连接: 内连接 select * from yg join gs on yg.name=gs.name 左外连接 右外连接 但没有全外连接 九、联合: 除了连接,mysql4。0以上的版本还支持UNION运算符,它用来把多个select查询号的输出连接成一个单独的结果集。大多数情况下,这个运算符用来把查询产生的结果集添加到不同的表,同时创建包括所有结果的一个单独表。比如面试的时候问你,有两个表,字段信息一样,让你用一条语句把两个表的信息组合为一个单独的表! 为了说明UNION运算符的使用方法,我们举一个例子:现在有两个表,分别存放的是男同学信息和女同学信息,如果用一个语句将所有同学的信息显示出来! mysql> select * from nan; +--------+-------+ | name | score | +--------+-------+ | 彭聪留 | 80 | | 费优优 | 81 | | 曲权 | 82 | +--------+-------+ 3 rows in set (0.00 sec) mysql> select * from nv; +------+-------+ | name | score | +------+-------+ | 彭红 | 80 | | 费红 | 81 | | 曲红 | 82 | +------+-------+ 3 rows in set (0.00 sec) mysql> select * from nan union select * from nv; +--------+-------+ | name | score | +--------+-------+ | 彭聪留 | 80 | | 费优优 | 81 | | 曲权 | 82 | | 彭红 | 80 | | 费红 | 81 | | 曲红 | 82 | +--------+-------+ 6 rows in set (0.00 sec) 那如果有三个表怎么办?也是一样的操作! 但注意的是如果两个表的某条记录信息完全一致,则只显示为一条;如果想显示全部记录则在union后 加 all mysql> select * from nan union all select * from nv; 如果面试官又问你,如果想把显示的信息保存到一个表中怎么办? mysql> create table 表名 select 语句; 十、数据库备份与恢复 备份: 第一种方法: mysqldump 备份一个表 mysqldump -h主机名 ?u用户名 ?p口令 数据库 表名 >文本文件 恢复: mysql -h 主机名 ?u用户名 ?p口令 数据库 <文本文件 备份一个数据库中的两个表或是多个表怎么办? Mysqldump ?h 主机名 ?u用户名 ?p口令 数据库 表名1 表名2 >文本文件 恢复的时候: mysql ?h 主机名 ?u用户名 ?p 口令 数据库<文本文件 备份整个数据库: 格式: mysqldump ?u用户名 -p密码 数据库名>文本文件名 如:C:\test>mysqldump -uroot -p111111 net14 >net14.txt 删除数据库net14: drop database net14 进行恢复: C:\test>mysql -u root -p111111 net14mysql -u root -p111111 net14文本文件名 如: C:\test>mysqldump -uroot -p111111 -B net14 net28 >net1428.txt 然后删除net14和net28再进行恢复 但是要注意:必须一个一个的恢复,不能同时恢复两个: 如: C:\test>mysql -uroot -p111111 -B net14 mysql -uroot -p111111 -B net28 select * from student into outfile 'c:\\abc1.txt'; Query OK, 13 rows affected (0.00 sec) 注意: 1.路径中的盘符后是两个\\,其中第一个代表转义作用,第二个才是代表根目录.有时写成一个\时不会报错,因此要注意检查备份的正确性; 2.不允许重写文本文件; 恢复方法: 那么怎么恢复呢:: 用LOAD DATA来恢复: 格式: load data infile ‘路径及文件名’ into table 表名 如: load data infile 'c:\\student.txt' into table student; 注意:表必须存在.可用delete,清空其中的所有记录 或者用: truncate 表名,只删除记录,不删除结构! 如果恢复出错怎么办? 1. 权限问题. 2. 分界符不匹配! 3. 路径和文件名不对! 十一、数据的导入/导出: 如何与其他数据源之间进行数据的导入与导出! 例如:如何将 SQL server 的数据导到mysql中来 1. 先在MS SQL 2000的导入导出工具将数据导出成*.txt文件格式 注意打开backup.txt 观察其中的分隔字符 MS SQL 2000好像是用逗号分隔的 2. 在mysql中利用 load data infile 命令导入 mysql> load data infile 'c:\\sql.txt' into table abc fields terminated by ','; Query OK, 5 rows affected (0.00 sec) Records: 5 Deleted: 0 Skipped: 0 Warnings: 0 注意 目标表必须已经存在,并结构要与源表的结构相同! ACCESS 导到 MYSQL: 1. 先建立一个access文件,保存成文本文件 2. 打开文本文件,再转换一下编码成ansi 3. 建立数据库,导入到mysql中! mysql> load data infile 'c:\\abc1.txt' into table abc fields terminated by ','; Query OK, 3 rows affected (0.00 sec) EXCEL 导到mysql 步骤同上。只是要注意的是:excel默认是以 TAB 分隔的所以应用以下的语句: mysql> load data infile 'c:\\book1.txt' into table abc fields terminated by '\t';

这篇文章对你多有用?

相关文章

article CentOS系统安装MySQL教程

(No rating)  5-31-2015    Views: 956   
article Mysql 删除表名中有特殊字符的表
由于公司业务和应用的调整,之前在Mysql中的很多表...

(No rating)  7-21-2014    Views: 1119   
article mysql分表分区的优缺点
Mysql分区和分表的区别 ...

(No rating)  12-23-2020    Views: 53   

用户评语

添加评语
当前还没有评语.


.: .: .: .: .:
[ 登陆 ]
北京护航科技有限公司 2006

Novots Technologies Limited