|
linux 下的软件安装方式
a. 源码包(建议)
优点
开源,如果有足够的能力,可以修改源代码
编译安装。更加适合自己的系统。稳定高效
缺点
安装步骤较多,容易出错
编译过程时间较长
- 先将软件包传递到服务器上。放到/usr/lcoal/src
- 解压需要安装的源码包 # tar -zxvf
- 切换到源码目录然后 cd
- 配置(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> 查询记录
select 列名称1,列名称2…. from 表名称 where 条件;
select from 表名称 where 条件;
案例:查询刚才新增的记录
只查询用户名和密码,并且是id =2的。
select username,password from xg where> 查询全部
select from xg;
删除记录
delete from 表名 where 列名称 =值;
案例:删除id为2的记录。
delete from xg where> 索引一直都在的。
备份与还原(重点)
全量(全部)备份:(数据+结构):
#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
还原数据
设置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;
|
|
|