Oracle集群 & Grid(rac)配置,反推创建过程(重要)。
目前机器上,oracle都是安装好的,那么我们怎么知道,之前的安装过程大概是什么样子呢?
大致安装oracle集群的内容:
一、准备和配置:
1、网卡
2、ip资源
3、scanip
4、hosts
5、dns配置
6、准备rac节点,配置节点要互通
首先要保证网络的正常 二、创建用户(grid和oracle用户)
1、配置系统内核参数
2、配置这两个用户的环境变量
三、配置ASM磁盘
1、fdisk 格式化磁盘
2、oracleasm
3、udev配置磁盘 三、安装相关依赖软件包 四、安装grid(rac)
1、[oracle@shdb02 grid]$su - grid
[oracle@shdb02 grid]$cd /orasoft/ora11g/grid
[oracle@shdb02 grid]$./runinstaller
2、配置scan
3、配置hosts
4、利用asmca静默方式或图形方式配置磁盘组
5、安装集群管理工具
五、安装Oracle软件
1、用DBCA创建数据库或静默方式(即命令行下安装) 查看当前linux的模式,命令 runlevel
[oracle@shdb02 grid]$ runlevel
N 3
直接输入init + 你想要的模式 即可切换模式。
比如输入: init 0 就是关机
init 3 就是切换到多用户-命令行模式
init 5 就是切换到图形化界面
init 6 就是重启
1、关于创建用户
1、oinstall -G dba oracle 什么意思?
-g是组,-G是其他组,最后是用户名-g 表示为用户指定一个主group
-G 表示为用户指定一个group
//这样oracle既属于oinstall组也属于dba组。平时主要是oinstall组发生作用。
//创建一个用户组oinstall:
[root@shdb02 ~]# groupadd oinstall
//创建一个用户组dba:
[root@shdb02 ~]# groupadd dba
//创建一个用户主目录/u01/app/oracle:
[root@shdb02 ~]# mkdir -p /u01/app/oracle
//创建用户oracle 到主组oinstall,副组dba,主目录/u01//oracle:
[root@shdb02 ~]# useradd -g oinstall -G dba -d /u01/app/oracle oracle
//如果oracle用户已经存在则:
[root@shdb02 ~]# usermod -g oinstall -G dba -d /u01/app/oracle oracle
//查看用户oracle的添加情况
[grid@shdb02 app]$ id oracle
uid=1100(oracle) gid=1100(oinstall) groups=1100(oinstall),1101(dba),1102(oper),1201(asmdba)
//查看oracle所属的组:
[grid@shdb02 app]$ groups oracle
oracle : oinstall dba oper asmdba
[grid@shdb02 app]$ ll -l /u01/app/
total 16
drwxr-xr-x 3 root oinstall 4096 May 10 2018 11.2.0
drwxr-xr-x 7 grid oinstall 4096 Apr 3 2020 grid
drwxr-xr-x 6 oracle oinstall 4096 Apr 28 2019 oracle
drwxrwx--- 5 grid oinstall 4096 May 10 2018 oraInventory 2、Oracle install
为什么需要oinstall ,dba 两个组,一个是控制软件安装,补丁安装等的;另一个是控制数据库创建,数据库管理等的。
你可以将两个权限都授权给dba组,只创建dba一个组就可以了。角色细化而已,另外oracle还要求redo日志、控制文件分不同盘放,数据安全要求而已
3、如果安装单实例,创建一个oracle 用户就可以了
如果是安装RAC,则需要在创建一个集群的用户,在安装grid
4、如果将grid 和 oracle 用同一个用户来安装,那么必须改变ORACLE_HOME变量的值。
这里用grid用户创建磁盘组,管理asm,oracle建库即可
2、创建用户及安装目录
//建组
/usr/sbin/groupadd -g 1000 oinstall
/usr/sbin/groupadd -g 1020 asmadmin
/usr/sbin/groupadd -g 1021 asmdba
/usr/sbin/groupadd -g 1022 asmoper
/usr/sbin/groupadd -g 1031 dba
/usr/sbin/groupadd -g 1032 oper
//用户
useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper,oper,grid
useradd -u 1101 -g oinstall -G dba,asmdba,oper oracle
//建目录
mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/grid
mkdir /u01/app/oracle
//创建所属组权限
chown -R grid:oinstall /u01
chown oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/
3、/etc/group,查看已安装系统的用户组情况
[oracle@shdb02 app]$ cat /etc/group
oinstall:x:1100:grid
asmadmin:x:1200:grid
dba:x:1101:oracle,grid
oper:x:1102:oracle
asmdba:x:1201:grid,oracle
asmoper:x:1202:grid
。。。。
4、/etc/passwd,查看已安装的用户情况
[oracle@shdb02 app]$ cat /etc/group
oprofile:x:16:16:Special user account to be used by OProfile:/home/oprofile:/sbin/nologin
grid:x:1200:1100::/home/grid:/bin/bash
oracle:x:1100:1100::/home/oracle:/bin/bash
。。。。
5、查看/app目录即已安装的安装目录的一些信息
[root@shdb02 ~]# su - oracle
[oracle@shdb02 ~]$ cd /u01/app/
[oracle@shdb02 app]$ ll
total 16
drwxr-xr-x 3 root oinstall 4096 May 10 2018 11.2.0
drwxr-xr-x 7 grid oinstall 4096 Apr 3 2020 grid
drwxr-xr-x 6 oracle oinstall 4096 Apr 28 2019 oracle
drwxrwx--- 5 grid oinstall 4096 May 10 2018 oraInventory
6、 给oracle用户和grid用户配置环境变量
1、oracle用户,配置oracle的环境变量
[root@shdb02 ~]# su - oracle
[oracle@shdb02 ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs PATH=$PATH:$HOME/bin
export PATH
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=ht2
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH=${PATH}:$ORACLE_BASE/common/oracle/bin
export ORACLE_PATH=${PATH}:$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/admin
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
export PATH=$PATH:$ORACLE_HOME/bin
umask 022 2、grid用户,配置GRID的环境变量
[root@shb02 ~]# su - grid
[grid@shdb02 ~]$ cat .bash_profile
# .bash_profile # Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
ORACLE_BASE=/u01/app/grid; export ORACLE_BASE
ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME
GRID_HOME=/u01/app/11.2.0/grid; export GRID_HOME
ORACLE_SID=+ASM2; export ORACLE_SID
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
PATH=${PATH}:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH
THREADS_FLAG=native; export THREADS_FLAG
export TEMP=/tmp
export TMPDIR=/tmp
export NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"
通过命令查看grid和oracle用户相关环境变量
//grid用户
[root@shdb02 app]# su - grid
[grid@shdb02 app]$ echo $ORACLE_HOME
/u01/app/11.2.0/grid
[grid@shdb02 app]$ echo $ORACLE_BASE
/u01/app/grid
//oracle用户
[root@shdb02 app]# su - oracle
[oracle@shdb02 ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2.0/db_1
[oracle@shdb02 ~]$ echo $ORACLE_BASE
/u01/app/oracle
oracle的三个安装包的情况:
/orasoft/ora11g
[root@shdb02 ora11g]# ll
total 3664216
-rwxrwxrwx 1 grid oinstall 1395582860 Dec 26 2015 p13390677_112040_Linux-x86-64_1of7.zip
-rwxrwxrwx 1 grid oinstall 1151304589 Dec 26 2015 p13390677_112040_Linux-x86-64_2of7.zip
-rwxrwxrwx 1 grid oinstall 1205251894 Dec 26 2015 p13390677_112040_Linux-x86-64_3of7.zip
[root@shdb02 ora11g]# du -sh
3.5G
1、p13390677_112040_Linux-x86-64_1of7.zip解压,大部分都在这里
[oracle@shdb02 database]$ unzip p13390677_112040_Linux-x86-64_1of7.zip
[oracle@shdb02 database]$ cd database
total 60
drwxr-xr-x 4 oracle oinstall 4096 Aug 27 2013 install
-rw-r--r-- 1 oracle oinstall 30016 Aug 27 2013 readme.html
drwxr-xr-x 2 oracle oinstall 4096 Aug 27 2013 response
drwxr-xr-x 2 oracle oinstall 4096 Aug 27 2013 rpm
-rwxr-xr-x 1 oracle oinstall 3267 Aug 27 2013 runInstaller //安装文件
drwxr-xr-x 2 oracle oinstall 4096 Aug 27 2013 sshsetup
drwxr-xr-x 14 oracle oinstall 4096 Aug 27 2013 stage
2、p13390677_112040_Linux-x86-64_2of7.zip ,大部分是解压到stage下的Components
3、p13390677_112040_Linux-x86-64_3of7.zip, 这个里面是grid内容,解压后会生成单独一个目录
drwxr-xr-x 7 oracle oinstall 4096 Aug 27 2013 database
drwxr-xr-x 7 root root 4096 Aug 27 2013 grid
-rwxrwxrwx 1 grid oinstall 1395582860 Dec 26 2015 p13390677_112040_Linux-x86-64_1of7.zip
-rwxrwxrwx 1 grid oinstall 1151304589 Dec 26 2015 p13390677_112040_Linux-x86-64_2of7.zip
-rwxrwxrwx 1 grid oinstall 1205251894 Dec 26 2015 p13390677_112040_Linux-x86-64_3of7.zip
grid内的一些重要内容
/orasoft/ora11g/grid/stage/cvu/cv/remenv/cvuqdisk-1.0.9-1.rpm
/orasoft/ora11g/grid/rpm/cvuqdisk-1.0.9-1.rpm
[oracle@sh02 grid]$ ll
total 68
drwxr-xr-x 4 root root 4096 Aug 26 2013 install
-rw-r--r-- 1 root root 30016 Aug 27 2013 readme.html
drwxr-xr-x 2 root root 4096 Aug 26 2013 response
drwxr-xr-x 2 root root 4096 Aug 26 2013 rpm
-rwxr-xr-x 1 root root 4878 Aug 26 2013 runcluvfy.sh
-rwxr-xr-x 1 root root 3268 Aug 26 2013 runInstaller
drwxr-xr-x 2 root root 4096 Aug 26 2013 sshsetup
drwxr-xr-x 14 root root 4096 Aug 26 2013 stage
-rw-r--r-- 1 root root 500 Aug 27 2013 welcome.html
内核配置
[root@shdb02 ora11g]# cat /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmax = 4398046511104
kernel.shmall = 1073741824
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
vm.nr_hugepages = 66696
安装过程猜想
一、实际安装步骤1,修改配置
[oracle@sh02 ora11g]$ cd database/response/
[oracle@shdb02 response]$ ll
total 80
//安装应答配置文件
-rw-r--r-- 1 oracle oinstall 25116 Aug 27 2013 db_install.rsp
//创建数据库应答
-rwxr-xr-x 1 oracle oinstall 44533 Aug 27 2013 dbca.rsp
//建立监听、本地服务名等网络设置应答
-rwxr-xr-x 1 oracle oinstall 5871 Aug 27 2013 netca.rsp
修改配置文件db_install.rsp,并安装
下面把主要修改的地方贴出来,具体详细文件
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=shdb02
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/u01/app/oracle/oradata
#oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/u01/app/oracle/recovery_data
DECLINE_SECURITY_UPDATES=true //一定要设为true
实际步骤2:初始化安装
登录oracle用户,执行安装
[oracle@shdb02 database]$ cd /orasoft/ora11g/database
[oracle@shdb02 database]$./runInstaller-silent -responseFile
[oracle@shdb02 database]$/orasoft/ora11g/database/response/db_install.rsp
//安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在进行,如果出现[FATAL],则安装程序已经停止了。
//打开另一个终端,执行命令
#tail -100 f /u01/app/oracle/oraInventory/logs/installActions......log
//可以实时跟踪查看安装日志,了解安装的进度。
//当出现
以下配置脚本需要以 "root" 用户的身份执行。
#!/bin/sh
#要运行的 Root 脚本
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
要执行配置脚本, 请执行以下操作:
1. 打开一个终端窗口
2. 以 "root" 身份登录
3. 运行脚本
4. 返回此窗口并按 "Enter" 键继续
Successfully Setup Software.
//出现这个的话,说明已安装成功,则需要按提示操作,操作完返回Enter成功
实际步骤3,配置监听
配置监听配置文件模板/orasoft/ora11g/database/response/netca.rsp
1、/orasoft/ora11g/database //安装文件放置目录
2、/u01/app/oracle/product/11.2.0/db_1 //oracle主目录
[oracle@shdb02 bin]$ /u01/app/oracle/product/11.2.0/db_1/bin/netca -silent -responsefile /orasoft/ora11g/database/response/netca.rsp
正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /orasoft/ora11g/database/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
Oracle Net 监听程序启动:
正在运行监听程序控制:
/u01/app/oracle/product/11.2.0/db_1/bin/lsnrctl start LISTENER
监听程序控制完成。
监听程序已成功启动。
监听程序配置完成。
成功完成 Oracle Net Services 配置
//成功运行后,在/opt/oracle/11.2.0/network/admin目录下生成sqlnet.ora和listener.ora两个文件。
//完成后通过命令“netstat -tlnp”可以查看到1521端口已开
tcp 0 0 :::1521 :::* LISTEN 5477/tnslsnr
4、安装新库
修改配置文件 /orasoft/ora11g/database/response/dbca.rsp #静默建立新库模板
RESPONSEFILE_VERSION = "11.2.0" //不能更改
OPERATION_TYPE = "createDatabase"
GDBNAME = "fp" //全局数据库的名字=SID+主机域名
SID = "fp1" //对应的实例名字
TEMPLATENAME = "General_Purpose.dbc" //建库用的模板文件
DATAFILEDESTINATION = /u01/app/oracle/oradata //数据文件存放目录
RECOVERYAREADESTINATION=/u01/app/oracle/recovery_data //恢复数据存放目录
CHARACTERSET = "AL32UTF8" //字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。(ZHS16GBK)
TOTALMEMORY = "5120" //oracle内存5120MB
10.配置完之后,执行命令
/u01/app/oracle/product/11.2.0/db_1/dbca -silent -responseFile /orasoft/ora11g/database/response/dbca.rsp1% 已完成
3% 已完成
11% 已完成
18% 已完成
26% 已完成
37% 已完成
正在创建并启动 Oracle 实例
40% 已完成
45% 已完成
50% 已完成
55% 已完成
56% 已完成
60% 已完成
62% 已完成
正在进行数据库创建
66% 已完成
70% 已完成
73% 已完成
85% 已完成
96% 已完成
100% 已完成
Oracle集群 & Grid(rac)配置,反推创建过程(重要)。的更多相关文章
- Oracle集群(RAC)时间同步(ntp和CTSS)
Oracle集群(RAC)时间同步(ntp和CTSS) http://blog.itpub.net/26736162/viewspace-2157130/ crsctl stat res -t -in ...
- 转载:【Oracle 集群】RAC知识图文详细教程(七)--Oracle 11G RAC集群安装
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(六)--RAC在LINUX上使用NFS安装前准备
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(四)--缓存融合技术和主要后台进程
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(九)--RAC基本测试与使用
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(八)--Oracle 11G RAC数据库安装
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(五)--特殊问题和实战经验
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(三)--RAC工作原理和相关组件
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- 转载:【Oracle 集群】RAC知识图文详细教程(一)--集群概念介绍
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
随机推荐
- BSOJ6310题解
互不相同,太困难啦!!!!!! 考虑可以相同的情况.可以容斥. \[ans=(1+1+1+1)-(2+1+1)+(3+1)+(2+2)-(4) \] 有点抽象,看看就好() \[ans=(a,b,c, ...
- LGP7814题解
lmpp 教你对着样例得到做法.jpg 题意:给定一个长度为 $ n $ 的字符串 A,要求你构造一个字符串 B,使得 A 是 B 的子序列且 A 不是 B 的子串. 首先给出无解的判断方法: if( ...
- [差分数组] LeetCode789 得分最高的最小轮调
LeetCode 得分最高的最小轮调 今天当然CV了因为今天比较忙,所以直接走算法,因为什么都不做的话并不符合社会主义核心价值观,今天小学一手查分数组. 题目:并不存在CV了还写什么题解 算法背景: ...
- 网关中间件-Nginx(一)
一.Nginx介绍 1.nginx是一个高性能HTTP服务器,反向代理服务器,邮件代理服务器,TCP/UDP反向代理服务器. 2.nginx处理请求是异步非阻塞的,在高并发下nginx 能保持低资源低 ...
- centos7安装mysql(完整)
安装包下载并上传到Linux系统中 官网5.7版本:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.29-1.el7.x86_64.rpm-b ...
- 面向服务开发(SOA)
面向服务的体系结构是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台.操作系统和编程语言 ...
- Nacos+OpenFegin正确调用服务的姿势!
Nacos 支持两种 HTTP 服务请求,一个是 REST Template,另一个是 Feign Client.之前的文章咱们介绍过 Rest Template 的调用方式,主要是通过 Ribbon ...
- web自动化之定位
UI自动化必不可少的操作--元素定位 8大基础定位 driver.find_element_by_id() # id定位 driver.find_element_by_name() # name定位 ...
- Mysql等保部分加固
一.等保要求:操作系统和数据库系统管理用户身份标识应具有不易被冒用的特点,口令应有复杂度要求并定期更换. 实施步骤: 启用口令复杂审核(5.6.6版本以上,才有此模块功能,需要重启mysql). 查看 ...
- 项目构建工具之maven01
Maven 是一个项目管理工具,可以对 Java 项目进行构建.依赖管理.Maven 也可被用于构建和管理各种项目,例如 C#,Ruby,Scala 和其他语言编写的项目.Maven 曾是 Jakar ...