• +86 18940128339
  • 3056844889@qq.com

Category Archive 未分类

SVN安装 使用

采用yum安装方式:

1、rpm -qa subversion //检查是否安装了低版本的SVN

2、yum remove subversion //如果存储旧版本,卸载旧版本SVN

3、开始安装yum -y install subversion

安装好后查看版本svnserve –version

4、创建版本仓库:

mkdir -p /data/svn/myproject                                
svnadmin create /data/svn/myproject/

查看/data/svn/myproject 文件夹可以发现有conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。

5、配置权限

cd /data/svn/myproject/conf/            //进入配置目录

vim svnserve.conf                    //编辑配置文件,加入下面五行内容

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /data/svn/myproject

6、编辑密码文件,添加用户admin密码123456:

vim passwd  

localuser = 123456
defaultuser = 123456

7、编辑权限文件,添加用户test权限

vim authz

[groups]
root = defaultuser 
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
[/]
@root = rw
localuser = rw

8.启动SVN

# svn端口默认是3690 这里使用10102
svnserve -d  --listen-port 10102  -r  /data/svn/   

二、给svn添加钩子同步文件到PHP测试环境 (这里PHP项目目录为/var/www/html/project/)

1、进入版本库下的hooks目录

cd /data/svn/hooks/

2、将post-commit.tmpl 复制为 post-commit

cp post-commit.tmpl post-commit

给post-commit可执行权限

chmod 0777 post-commit

4、编辑post-commit,注释掉#mailer.py……这一行,添加下面四行,编码问题,如果错误的话可能导致无法同步 成功,可选的有en_US.UTF-8、zh_CN.UTF-8、zh_CN.GB2312,可以一个个试。

vi post-commit

#mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
export LC_ALL=en_US.UTF-8
SVN=/usr/bin/svn
STATIC_DIR=/www/wwwroot/
${SVN} update  ${STATIC_DIR} --username "localuser" --password "123456"

5、在提交之前,进行一次checkout代码到指定目录

svn checkout svn://localhost/ /www/wwwroot/
5、查看 关闭进程 
ps -aux | grep svnserve
 kill -9 端口号

三.设置开机启动

查看服务 ps aux|grep svnserve

查看 pid下面会用到 pidof svnserve

打开 svnserve.pid 添加上面的pid

vi /run/svnserve/svnserve.pid
cat svnserve.pid

编辑 svnserve.service 替换ExecStart内容

vim  /lib/systemd/system/svnserve.service
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -d --listen-port 10102 -r /data/svn

svnserve.service 服务

systemctl enable svnserve.service #开机自启
systemctl start svnserve.service #启动服务
systemctl stop svnserve.service #停止服务
systemctl status svnserve.service #停止服务

mysql命令

常用代码

// 设置自增字段
alter table 数据表名 modify 字段名 int auto_increment;
alter table demo modify id int auto_increment;
// 修改自增 起始值
alter table 数据表名 auto_increment = 1001;
alter table demo auto_increment = 1000;

linux终端

//登录mysql(有密码请输入密码)
mysql -u root -p
//打开数据库
show database;
//设置密码
set password = password('123456');
//退出
exit;
//使用 mysql 数据库
use mysql;
// 查询MySQL账户
select user,host from user;
//更改访问限制 
update user set host=’%’where user=’用户名’@'本地账户';
//示例:
update user set host=’%’where user=’root’@'localhost';
//新增远程访问账号 
grant all privileges on 数据库.数据表 to 用户名 @"%" identified by "密码";
//示例:
grant all privileges on *.* to remoteUser @"%" identified by "123456";
//更新配置
flush privileges;
//创建用户
CREATE USER '远程用户'@'%' IDENTIFIED BY '密码';
//示例:
CREATE USER 'remoteUser'@'%' IDENTIFIED BY '123456';
修改密码
ALTER  user '用户名'@'本地账户'IDENTIFIED BY '密码';
//示例:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
// 用户分配权限
GRANT SELECT, INSERT, UPDATE, REFERENCES, DELETE, CREATE, DROP, ALTER, INDEX, TRIGGER, CREATE VIEW, SHOW VIEW, EXECUTE, ALTER ROUTINE, CREATE ROUTINE, CREATE TEMPORARY TABLES, LOCK TABLES, EVENT ON `数据库名称`.* TO '远程用户'@'%';
//示例:
GRANT SELECT, INSERT, UPDATE, REFERENCES, DELETE, CREATE, DROP, ALTER, INDEX, TRIGGER, CREATE VIEW, SHOW VIEW, EXECUTE, ALTER ROUTINE, CREATE ROUTINE, CREATE TEMPORARY TABLES, LOCK TABLES, EVENT ON `mysql`.* TO 'remoteUser'@'%';
// 分配指定表
GRANT GRANT OPTION ON `数据库名称`.* TO '远程用户'@'%';
GRANT GRANT OPTION ON `mysql`.* TO 'remoteUser'@'%';

面向对象程序设计(OOP)

基本信息

面向对象程序设计(Object Oriented Programming,OOP)是一种计算机编程架构。OOP的一条基本原则是计算机程序由单个能够起到子程序作用的单元或对象组合而成。OOP达到了软件工程的三个主要目标:重用性、灵活性和扩展性。OOP=对象+类+继承+多态+消息,其中核心概念是类和对象。

面向对象程序设计方法是尽可能模拟人类的思维方式,使得软件的开发方法与过程尽可能接近人类认识世界、解决现实问题的方法和过程,也即使得描述问题的问题空间与问题的解决方案空间在结构上尽可能一致,把客观世界中的实体抽象为问题域中的对象。

面向对象程序设计以对象为核心,该方法认为程序由一系列对象组成。类是对现实世界的抽象,包括表示静态属性的数据和对数据的操作,对象是类的实例化。对象间通过消息传递相互通信,来模拟现实世界中不同实体间的联系。在面向对象的程序设计中,对象是组成程序的基本模块

特点

1、封装性:

封装是指将一个计算机系统中的数据以及与这个数据相关的一切操作语言(即描述每一个对象的属性以及其行为的程序代码)组装到一起,一并封装在一个有机的实体中,把它们封装在一个“模块”中,也就是一个类中,为软件结构的相关部件所具有的模块性提供良好的基础。在面向对象技术的相关原理以及程序语言中,封装的最基本单位是对象,而使得软件结构的相关部件的实现“高内聚、低耦合”的“最佳状态”便是面向对象技术的封装性所需要实现的最基本的目标。对于用户来说,对象是如何对各种行为进行操作、运行、实现等细节是不需要刨根问底了解清楚的,用户只需要通过封装外的通道对计算机进行相关方面的操作即可。大大地简化了操作的步骤,使用户使用起计算机来更加高效、更加得心应手。

2、继承性:

继承性是面向对象技术中的另外一个重要特点,其主要指的是两种或者两种以上的类之间的联系与区别。继承,顾名思义,是后者延续前者的某些方面的特点,而在面向对象技术则是指一个对象针对于另一个对象的某些独有的特点、能力进行复制或者延续。如果按照继承源进行划分,则可以分为单继承(一个对象仅仅从另外一个对象中继承其相应的特点)与多继承(一个对象可以同时从另外两个或者两个以上的对象中继承所需要的特点与能力,并且不会发生冲突等现象);如果从继承中包含的内容进行划分,则继承可以分为四类,分别为取代继承(一个对象在继承另一个对象的能力与特点之后将父对象进行取代)、包含继承(一个对象在将另一个对象的能力与特点进行完全的继承之后,又继承了其他对象所包含的相应内容,结果导致这个对象所具有的能力与特点大于等于父对象,实现了对于父对象的包含)、受限继承、特化继承。

3、多态性:

从宏观的角度来讲,多态性是指在面向对象技术中,当不同的多个对象同时接收到同一个完全相同的消息之后,所表现出来的动作是各不相同的,具有多种形态;从微观的角度来讲,多态性是指在一组对象的一个类中,面向对象技术可以使用相同的调用方式来对相同的函数名进行调用,即便这若干个具有相同函数名的函数所表示的函数是不同的

Composer安装

地址:https://www.phpcomposer.com/

安装前请务必确保已经正确安装了 PHP。打开命令行窗口并执行 php -v 查看是否正确输出版本号。
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"

执行第一条命令下载下来的 composer-setup.php 脚本将简单地检测 php.ini 中的参数设置,如果某些参数未正确设置则会给出警告;然后下载最新版本的 composer.phar 文件到当前目录

Mac 或 Linux 系统:

sudo mv composer.phar /usr/local/bin/composer

Windows 系统:

  1. 找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。
  2. composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。
  3. 在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。
@php "%~dp0composer.phar" %*

保持 Composer 一直是最新

composer selfupdate

centos7安装python3.10.9

简单说明

  • Python2.7.5是CentOS 7默认安装的版本;
  • Python3.6.8是CentOS 7中可以通过默认repo安装到的最新版本;

安装过程

官方源码包下载地址:https://www.python.org/downloads/source/

1. 安装必要的依赖

yum groupinstall "Development Tools"
yum install openssl-devel bzip2-devel libffi-devel

2. 下载源码包

wget https://www.python.org/ftp/python/3.10.9/Python-3.10.9.tgz

3. 解压进入

tar zxvf Python-3.10.9.tgz
cd Python-3.10.9

4. 编译安装

./configure --prefix=/usr/local/python310
make && make install

5. 加入系统路径

echo 'export PATH=/usr/local/python310/bin:$PATH' >> /etc/profile
source /etc/profile

6. 检查版本

python3 -V