linux前四天学习笔记
以下是在linux培训机构所学的内容,感觉比较乱
MySQL学习笔记
MySQL的安装
linux中的超级管理员root
aixocm
vnc的退出: F8
MySQL的特点、优点:
关系型
开源、免费
c++
瑞典
sun
oracle
Linux、unix、windows
tcp/ip
多用户、用线程、多CPU
多种存储引擎(表的类型)
ansi/iso的sql标准
c -> s
语言, sql
structued query language
create table emp
(
);
select * from emp where empAge > 30;
sql语言
挂载光盘:
mount -o loop rhel6.3.x86.iso /var/ftp/rhel6.3
cd /var/ftp/rhel6.3/Packages
ls
1.
rpm包的方式
mysql-5.1
mysql-libs
mysql-server
php-mysql php->mysql
mysql-devel c->mysql
查询:
rpm -q mysql
安装:
rpm -ivh mysql-5.1 tab补齐
rpm -ivh mysql-server-5 tab补齐
server -> database -> talbes
data是存放在表中
c -> MySQL Server
客户端与服务器端进行通信的方式:
2种:
1. unix socket
2. tcp/ip
创建数据库:
create database ds;
进入数据库:
use ds;
创建表:
create table stu
(
stuID int,
stuName varchar(32), -- 32个字符 sqlServer
stuAge int
)engine=innodb charset=utf8;
show tables;
desc stu;
desc stu stuName;
show table status like 'stu'\G
show full columns from stu;
insert into stu values(1, 'tom', 20);
select * from stu;
drop table if exists stu;
show create table stu;
表类型
事务
abc
张三丰 unicode编码
3Byte
utf8字符集, 中文字2 ~ 4个字节
3
gb2312 gbk gb18030 中文2B
字符集
insert into stu values(1, 'tom', 20);
insert into stu values(2, 'mike', 20);
insert into stu values(3, 'lee', 20);
void main(void)
{
int a, b;
a = 10;
b = 20;
}
rpm包安装
service mysqld start
service mysqld stop
service mysqld status
ps aux | grep "mysql"
netstat -ntaup | grep "mysql"
mysql来访问mysqld服务
用哪个用户身份登录的:
status;
use mysql;
select user, password, host from user;
服务启动后就有:
sock文件
create database ds;
use ds;
mysql的配置文件:
c和s的
client server
c和s的配置文件是同一个:
/etc/my.cnf
哪个软件提供的my.cnf文件:
rpm -qf /etc/my.cnf
服务器端的配置项:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql # 在安装mysql-server软件时会自动添加mysql这个用户, useradd mysql
客户端的配置项:
[mysql]
prompt=ds>>
#socket=/tmp/mysql.sock
linux基础知识:
为使用MySQL服务
# -------------------------------------------------------------------
获得帮助:
find / -name "*.iso"
man find
j k上下翻动, 一行一行的
/-name搜索
q退出
ls -la /boot
-l选项, 方式运行
/boot参数, 处理对象
命令一般都是二进制程序
提供许多选项
常用的快捷键:
tab
上下箭头键
目录操作:
mkdir /abc
mkdir /etc/def
mkdir /xyz/lmn -p
rm -rf /abc
touch file1
rm -rf file1
文本文件内容的显示:
cat file1
less file1 分页看
文件的查找:
find / -name "*.txt"
拷贝
cp file1 /etc 拷文件
cp -rv abc /tmp 拷文件夹
create table if not exists emp
(
empID int auto_increment,
empName varchar(32),
hiredate date,
salary decimal(10, 2),
deptno int,
addr varchar(64) not null default '长沙',
age int check(age >= 0 and age <= 120),
primary key(empID)
)engine=innodb charset=utf8;
create table dept
(
deptID int primary key,
deptName varchar(32)
)engine=innodb charset=utf8;
vi的使用:
命令模式 -> 输入模式, 按i -> 命令模式, 按esc -> 末行模式, :x
输出重定向
ls > file1
输入重定向
管道
route -n | grep "UG" | awk '{print $2}'
用户
超级用户root
创建用户: useradd jerry
会自动创建jerry的宿主目录/home/jerry
linux中的用户放在/etc/passwd中
删除用户: userdel -r jerry
-r选项会删除jerry的宿主目录
组
创建组: groupadd development
组放在: /etc/group
怎么把用户加入组: useradd jerry -g development
删除组: groupdel development
权限
主人 属组 其他人
u g o
读 r
写 w
执行 x
chmod u-x,g+x,o-rx vnc.sh
更改主人:
chown -R tom vnc.sh
更改属组:
chgrp -R development vnc.sh
lftp 10.0.0.254
ls
cd pub
mirror stardict
cd stardict
rpm -ivh libsigc++...
rpm -ivh stardict... startdict-dic... --nodeps
# --------------------------------------------------------------
MySQL
数据类型:
int
create table stu
(
stuID int(4) zerofill
)engine=innodb charset=utf8;
123
-123
unsigned
00000000
sql编程
create table stu
(
f1 int unsigned,
f2 int unsigned
)engine=innodb charset=utf8;
create table stu
(
stuID int auto_increment unique,
stuName2 varchar(21000),
newsConten text,
stuDate datetime,
isAdmin enum('N', 'Y'),
isHot enum('Y', 'N')
)engine=innodb charset=utf8; -- 存储格式
select top 5 * from news where isHot = 'Y' order by newsDate desc;
utf8字符集, 中文字占2 ~ 4
绝大部分3B
utf8, 编码方式, unicode
ascii
a -> 97
b -> 98
c -> 99
中国字
gb2312
gbk
gb18030
AF001
BE003
/* sqlServer */
create table stu
(
stuID int identity(1, 1),
stuName varchar(32) -- 32Byte, 中 2B,
isAdmin bit -- 0 1 true false 1 0
);
select * from stu where isAdmin = 1;
insert into stu(stuName) values('tom2');
insert into stu(stuName) values('tom3');
insert into stu(stuName) values('tom4');
int
dec(5, 2)
float
varchar(21???)
text
enum('b', 'a')
datetime
# ------------------------------------------------------
绝对路径
/
相对路径
从当前目录开始
shutdown -h now 关机
init 0
shutdown -r now 关机重启
init 6
reboot
从图形 -> 字符: ctrl + alt + F2
从字符 -> 图形: alt + F1
shell壳
由bash提供的命令即内部命令
help
help cd
外部命令获得帮助:
netstat --help
man netstat
查看主机名:
hostname
快捷键:
tab
ctrl + c
ctrl + l
ctrl + u
ctrl + k
上下箭头键调出命令历史
scp root@10.0.0.252:~/ds.txt .
pwd
cd
. 当前目录
.. 上一级目录
~ 用户宿主目录
- 上一个目录
ls -ldtaA
-d 把文件夹当作文件
-t 按修改时间排序
-a 所有文件, 包括以.开头的隐藏文件
-A 所有文件, 包括以.开头的隐藏文件, 但不包括.和..
mkdir 创建
mkdir /etc/xyz
mkdir -p /abc/def
rm -rf abc 删除
rmdir abc 删除
du -sh /etc 查看/etc文件夹有多大
touch file{1..5} 创建空文件
touch -m file1 更新file1的修改时间
cp -p file1 /tmp 复制文件的权限、主人、属组等属性
cp -r abc /tmp 复制abc文件夹
cp -a abc /tmp 相当于-pr
cp -v file1 /tmp 显示复制详情
mv file1 /tmp 剪切文件
mv abc /tmp 剪切文件夹
mv file1 file2 文件改名
mv abc def 把文件夹file1改名为file2
file file1 查看file1的类型
ls -l file1
rm -rf file1 删除文件或文件夹
ln file1 file2 对file1建硬链接文件file2
不能对文件夹硬链接
ln file1 file2 -s 对file1建符号链接文件file2
ln abc def -s 对abc文件夹建符号链接def
cat -n /etc/passwd
less /etc/passwd
head -3 /etc/passwd
tail -3 /etc/passwd
which ls 找出外部命令ls放在什么地方
whereis ls 同which,同时列出
find / -name "*.mp3" 文件查找, 根据名字
find / -type f 文件查找, 根据类型, man find看类型
压缩
zip 压缩文件名 文件1 文件2
unzip abc.zip 解压
unzip 压缩文件名
gzip file1 file2 jile1->file1.gz file2->file2.gz
gzip -9 file1 file2 -9表示高压缩比率,默认为6
zcat file1.gz 不解压file1.gz查看里面的内容
gzip -d file1.gz 解压file1.gz
gzip不能压缩文件夹
bzip2 file1 file2 jile1->file1.bz2 file2->file2.bz2
bzip2 -9 file1 file2
bzcat file1.bz2 不解压file1.bz2查看里面的内容
bzip2 -d file1.bz2 解压file1.bz2
bzip2也不能压缩文件夹比gzip压缩比率大
用的最多的是tar命令tar命令
用途:制作归档文件,释放归档文件
格式:tar 【选项】... 归档文件名 源文件或目录
tar 【选项】... -C 建包或解包时进入指定的相对路径
tar cjvf ds.tar.bz2 file1 file2 dir1 使用bzip2标准压缩file1 file2 dir1包名为ds.tar.bz2
tar czvf ds.tar.gz file1 file2 dir1 使用gzip标准压缩file1 file2 dir1包名为ds.tar.gz
tar tvf ds.tar.gz 查看压缩文件ds.tar.gz的内容
tar xvf ds.tar.gz -C /tmp 将ds.tar.gz释放到tmp文件夹下面去
-c:建立
-C:建包或解包时进入指定的相对路径
-x:解压文件
-t:查看压缩文件
-z:使用gzip标准进行压缩、解压
-j:使用bzip2标准进行压缩、解压
-v:显示压缩解压过程
-f:后面紧跟压缩文件名称
-p:使用原文件的原来属性
-P:使用绝对路径(最好不用)
--exclude file:压缩过程中排除file(也可以是目录)
扩展:
tar cjvf ds-`date+%F`.tar.bz2 file1 file2 dir1 (`date+%F`是指将获取到的年月日作为包名内容)
linux前四天学习笔记的更多相关文章
- Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
- Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
- Linux进程间通信IPC学习笔记之消息队列(SVR4)
Linux进程间通信IPC学习笔记之消息队列(SVR4)
- Linux进程间通信IPC学习笔记之有名管道
基础知识: 有名管道,FIFO先进先出,它是一个单向(半双工)的数据流,不同于管道的是:是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)有一个与路径名关联的名 ...
- Linux进程间通信IPC学习笔记之管道
基础知识: 管道是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)没有名字: 2)用于共同祖先间的进程通信: 3)读写操作用read和write函数 #incl ...
- Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]
Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- 兄弟连Linux运维学习笔记
最新经典linux运维兄弟连Linux运维学习笔记... --------------- 全程1.5倍播放.加油我一定可以学完Linux----------------------Unix与Linux ...
- Linux shell 菜鸟学习笔记....
20171123 Linux shell 基础学习笔记1. shell 的开始 一般是 #!/bin/bash 通过 #! 来唯一指定使用的shell路径 其他的 # 都表示注释.2. shell 的 ...
随机推荐
- SQL代理执行EXE可执行程序
原文:SQL代理执行EXE可执行程序 1.如果没有启用xp_cmdshell安全配置是不可以使用的-- 启用xp_cmdshellEXEC sp_configure 'xp_cmdshell', 1 ...
- 认识ASP.NET MVC6
认识ASP.NET MVC6 这篇文章说明下如何在普通编辑器下面开发mvc6应用程序. 上篇文章: 十分钟轻松让你认识ASP.NET 5(MVC6) 首先安装mvc6的nuget包: 可以看到在pro ...
- MySQL 存储过程 经常使用语法
MySQL 存储过程是从 MySQL 5.0 開始添加的新功能.存储过程的长处有一箩筐.只是最基本的还是运行效率和SQL 代码封装.特别是 SQL 代码封装功能,假设没有存储过程,在外部程序訪问数据库 ...
- 《MonkeyRunner原理剖析》第九章-MonkeyImage实现原理 - 概览
MonkeyRunner没有引进Junit等单元测试框架,所以没有相应的断言方法来去对测试结果进行判断. 但MonkeyRunner提出了另外一个判断执行结果成功与否的方法,那就是通过截图比对.毕竟M ...
- 快速构建Windows 8风格应用36-商店应用发布流程
原文:快速构建Windows 8风格应用36-商店应用发布流程 引言 在发布应用之前,我们需要注册开发者账号才能够发布应用.我们可以登录https://appdev.microsoft.com/Sto ...
- [Node.js框架] 为什么要开发 Codekart 框架
两年前,在被php的$符号和字符串处理折磨得半夜骂娘之后,我义无反顾地决定:珍爱生命,远离php. 之后一直在寻找一门“完美的语言”,先后接触了Lisp.python.java.Ruby.Lisp几乎 ...
- 编写高效的jQuery代码
http://www.css88.com/jqapi-1.9/ 编写高效的jQuery代码 最近写了很多的js,虽然效果都实现了,但是总感觉自己写的js在性能上还能有很大的提升.本文我计划总结一些网上 ...
- Inno Setup技巧[界面]欢迎页面上添加文字
原文:Inno Setup技巧[界面]欢迎页面上添加文字 本文介绍在"欢迎页面添加文字"的两种方法. 界面预览: Setup技巧[界面]欢迎页面上添加文字" title= ...
- IQueryable与IQEnumberable的区别
IEnumberable接口: 公开枚举器,该枚举器支持在指定类型的集合上进行简单迭代.也就是说:实现了此接口的object,就可以直接使用froeach遍历此object; IQueryable接口 ...
- 深入理解javascript new的机制
我们在使用对象的时候,除了一些浏览器内置的单体对象可以直接使用外,都会new一个出来使用. 1.最简单的莫过于如下获取一个Object对象实例 var obj = new Object(); 说明:此 ...