linux 下的软件安装方式 a. 源码包(建议) 优点 开源,如果有足够的能力,可以修改源代码 编译安装。更加适合自己的系统。稳定高效 缺点 安装步骤较多,容易出错 编译过程时间较长

  1. 先将软件包传递到服务器上。放到/usr/lcoal/src
  2. 解压需要安装的源码包 # tar -zxvf
  3. 切换到源码目录然后 cd
  4. 配置(config/configure/bootstrap) ---编译(make/bootstrapd)----安装(make install/bootstrapd install) 配置操作主要是指定软件的安装目录、需要的依赖在什么地方、指定不需要可选依赖、配置文件的路径、通用数据存储位置等等。 指定安装的路径: --pefix=路径 需要依赖的路径:--with-PACKAGE 名=包所在的路径 不需要依赖:--without-PACHAGE 名 二进制包 优点:包管理系统简单、只需要几个命令就可以实现包的安装,升级、查询和卸载 缺点:经过编译、不再可以看到源代码

使用二进制包安装lynx(一款纯命令行的浏览器) 在光盘中就有这个包

例如查百度 :#lynx –dump www.baidu.com lynx 我们可以通过它写一个计划任务。

#yum list 查看yum可以安装的软件 #yum search包名 搜索指定的关键词的包 #yum remove 包名 2、安装mysql(重点) #yum install mysql-server(安装服务器端) mysql 初始化操作 #serivce mysql start #mysql_secure_installation #which mysql_secure_installation 查看命令在那 看MySQL端口号 netstat –tnlp mysql默认端口号 tcp 3306

三、MySQL 的基本操作(难点) 以excel为例 数据库:可以看作是整个Excel文件 数据表:可以看作是一个Excel文件中的工作表 行(记录):可以看作一个工作表中的一行 列(字段):可以看作一个工作表中总的一列

库操作(大小写不区分) show databases; 查看当前MySQL中全部的数据库 create database 库名;创建数据库 drop database 库名; 删除数据库 use 库名; 切换数据库

表操作 show tables; 显示当前数据库中所有的表名(必须先use 数据库) create table 表名称 在当前数据库下创建数据表 ( 列名称1 数据库类型 [NOT NULL AUTO_INCREMENT],(不允许为空 递增一般给第一个字段加) 列名称2 数据类型, 列名称3 数据类型, …, PRIMARY KEY(主键字段名) ); 常见的数据类型:int(整型)、char(定长字符)、varchar(不定长字符)、 主键一般就是序号所在的那一列(主键不能重复) desc 表名; (描述一个数据表)查看表结构 drop table [if exists] 表名; 删除数据表[判断]

案例:上述的语法 查看所有的数据表 要求 表名xg id字段、11为整型、不为空、自增、主键 Username字段、varchar类型、20长度 password 字符 、char类型 sql(standard query language)语句: Create table xg( id int(11) not null auto_increment, username varchar(20), password char(32), primary key(id) ); 查看表结构:desc 表名

删除数据表:drop table if exists xg; 记录/字段操作(重点 加行数) 增加记录 语法1:INSERT INTO 表名称 VALUES(值1,值2…..); 语法 2:INSERT INTO 表名称(列1,列2….) VALUES(值1,值2,…..); 案例:往数据表xg表中新增一个记录username为zhangsan,password为123456(加密结果 ) sql语: insert into xg(username,password)values(‘zhangsan’,123) ``表示字段 ‘’字符串必须加引号

更新记录 语法:update 表名称 set 列名称1 = 新值1,列名称2 = 新值2… where 列名称 = 某值; 以后在执行影响行数操作的时候,一定需要注意条件是否写错或者漏写。

案例:使用更新语句去更新id大于等于2的记录。将其密码改为456 sql语句:update xg set password=’456’ where id >=2

查询记录 select 列名称1,列名称2…. from 表名称 where 条件; select * from 表名称 where 条件; 案例:查询刚才新增的记录 只查询用户名和密码,并且是id =2的。 select username,password from xg where id=2; 查询全部 select * from xg;

删除记录 delete from 表名 where 列名称 =值; 案例:删除id为2的记录。 delete from xg where id=2; 索引一直都在的。

备份与还原(重点) 全量(全部)备份:(数据+结构): #mysqldump –uroot –p 12345 –A > 备份文件路径(数据+结构) 指定库备份(数据+结构) #mysqldump –uroot –p 12345 库名> 备份文件路径 多个库备份(数据+结构) #mysqldump –uroot –p 12345 --databases db1 db2 > 备份文件路径
文件格式xxxx.sql 案例:每分钟自动备份1次test数据库

mkfile test19.sh #!/bin/bash filename=”test”_date+’%Y%m%d%H%M’”.sql” mysqlsump –uroot –p 密码 test > /root/$filename crontab –e

        • /root/test19.sh

还原数据

设置Mysql 连接字符集: Mysql>set name utf8; [三码一致] 服务器端 +传输过程中+客户端

远程登陆终端连接数据库 MySQL的远程管理工具 分为两大类:B/S 架构 、C/S 架构 B/S: B是指浏览器,S是服务器 例如:百度

C/S: C 是客户端,S是服务器 例如:QQ 、电脑端微信 软件为:Navicat 、mysql workbrach 要解决的问题要允许MySQL远程登陆。

将其中一个记录的host改为% 表示可以在任意地址登陆

update user set host = ‘%’ where host = ‘yunwei’; 成功后

刷新权限表或者重启MySQL flush privileges;