仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 426|回复: 8
打印 上一主题 下一主题

[学习教程] MYSQL网站制作之在freebsd下安装oracle

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:40:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
尽管DBaaS模式有缺点,但它还是适合某些客户群体,这为解决方案提供商提供了新的商机。鉴于云服务的增长,解决方案提供商除了拥抱这些技术还有什么选择呢?如果他们不这样做,他们就会冒着被竞争对手击败的风险。但他们不能只想到如何把DBaaS的利润率与企业内部系统相比较。oracleУстановкаOracle8i8.1.7.4наFreeBSDшагзашагомВячеславИванченко
<ivi@dhs.net.ru>

$FreeBSD:doc/ru_RU.KOI8-R/articles/oracle/article.sgml,v1.362003/07/1403:12:47iviExp$


Чтобысделатьэтотдокументмаксимальноинформативнымиправильным,присылайтесвоикомментарииипожеланиямненаэлектронныйадресivi@dhs.net.ru.

ОтдельноблагодарюСтасаКорниенкозаеготруд,таккакльвинаядоляэтойстатьиосновананаегоматериале.
1.Введение
ЭтастатьясодержитописаниепошаговойустановкиOracle8iдляLinux(8.1.7.4)наFreeBSD.Передтем,какнаписатьэтустатью,явнимательноперечиталматериалСтасаКорниенко"УстановкаOracle8.1.xнаFreeBSD4.x".ИвсеменявродеустраиваловстатьеСтаса,датольконедаваласпокойноспатьмысль-почемужеустановщикOracle8i(OracleUniversalInstaller)напоследнейстадиисвоейработызависает,из-зачегозаканчиватьустановкуприходилосьвручную.Поэтомуяпоставилпередсобойцель-произвестиустановкуOracle8iтак,чтобывсенеприятныеситуации,связанныесзависаниемневозникалиприустановке.

ТщательнопроанализировавразличнуюдокументациюпоустановкеOracle8iнаразличныхдистрибутивахLinuxипроведяразличныеэкспериментынадустановкойOracle8i,какнаFreeBSD,такинаLinux,япришелквыводу,чтоOracle8iвсежеможноустановитьнаFreeBSDтак,чтобыоннезависалвовремяустановки.ТакженаFreeBSDвозможноиспользованиеGUI-утилит,которыебудутдоступныпослеустановки.Уменяэтополучилось,чегожелаюиВам!:-)

Предполагается,чтоустановленаFreeBSD-4.xилиFreeBSD-5.xнабазеi686вместеснастроеннойиготовойкработеXFree86/XWindowSystem.

Предполагается,чтоеслиуВаснетнеразмеченногоместанадискахВашеймашины,неменьше2ГБ,товфайловойсистемепримонтированнойвдиректорию/usrимеется3,5ГБсвободногоместа.Такженеобходимо,чтобыобщийразмерсвоп-разделовбылравен1ГБ,еслиобщийразмерсвоп-разделовнеудовлетворяетуказаннымтребованиямиуВасотсутствуетдополнительноенеразмеченноеместодлясозданияещеодногосвоп-раздела,тоВампонадобитсяеще1ГБсводногоместа,влюбойимеющейсянадискахВашеймашиныфайловойсистемеUFS.Конфигурациямашины,накоторуюустанавливаетсяOracle8i,должнаудовлетворятьследующимпараметрамCPUPIII-500МГцивыше,RAM256МБиболее.

Предполагается,чтовкачествекомандногоинтерпретатораусуперпользователяустановленcsh,исуперпользовательнаходитсявгруппеwheel,GIDкоторойравен0.

Предполагается,чтовсекомандыначинающиесяссимвола#выполняютсяотименисуперпользователя,ассимвола%-отименипользователяoracle,которогоВамещепредстоитсоздатьвсоответствиисрекомендациямиизэтойстатьи.Будьтевнимательны,выполнятькомандынеобходимоименностемUID,которыйрекомендуетсявстатье!Нестоитвыполнятькоманды,которыедолженвыполнятьпользовательoracle,отименисуперпользователя,вбольшинствеслучаевэтоприведеткразличнымпроблемамприинсталляцииOracle8i.

Предполагается,чтоисходныетекстысистемыдоступнывдиректории/usr/src,аколлекцияпортовнаходитсявдиректории/usr/ports.

Предполагается,чтобудетиспользоватьсяобновленнаяспомощьюcvsupколлекцияпортов,всвязистем,чтостарыеверсииFreeBSD,содержатвпортахemulators/linux_base-6иdevel/linux_devtools-6ссылкинауязвимыеверсиипакетов.Обобновленииколлекциипортовприпомощиcvsupможнопрочестьв"FreeBSDHandbook".

Предполагается,чтовсистемеустановленыbzip2иunzip.ЕслиуВасоднаизпоследнихверсийFreeBSD-4.x,илиFreeBSD-5.x,тоbzip2ужеестьвсистеме,еслинет,тонеобходимоустановитьегоизколлекциипортов,выполнивследующее:

#cd/usr/ports/archivers/bzip2&&makeinstallclean&&rehash

Дляустановкиunzipвыполнитеследующиекоманды:

#cd/usr/ports/archivers/unzip&&makeinstallclean&&rehash

Предполагается,чтовкорневойдиректориисуществуетсимволическаяссылка/compat,указывающаянадиректорию/usr/compat.Проверьтеэтокомандой,

#ls-l/compat

Есливыдаетсячто-товроде

lrwxr-xr-x1rootwheel116Dec13:18/compat->/usr/compat
значит,всенормально,есликомандавыдала
``ls:/compat:Nosuchfileordirectory
тосоздайтессылку,следующимобразом,
#ln-s/usr/compat/compat


2.ЗакачаемвсенеобходимыефайлыдляустановкиOracle8i
ЗакачаемвсенеобходимыефайлыдляустановкиOracle8iиположимихвдиректорию/usr/oinstall,которуюнеобходимосоздать.

#mkdir/usr/oinstall

#cd/usr/oinstall

Итак,нужныследующиефайлы:

linux81701.tar(549867520Б)-дистрибутивOracle8iEnterpriseEditionRelease3(8.1.7.0.1)forLinux(Intel).http://otn.oracle.com/software/products/oracle8i/content.html

procps-2.0.4-2.i386.rpm(134767Б)-содержитнекоторыесистемныеутилитынеобходимыеOracle8i.ftp://ftp.redhat.com/pub/redhat/linux/6.1/en/os/i386/RedHat/RPMS/procps-2.0.4-2.i386.rpm

jre118_v3-glibc-2.1.3.tar.bz2(7156122Б)-дистрибутивJREверсии1.1.8отblackdown.org.СписокFTP-серверов,откудаможнозакачатьдистрибутив,находитсянаhttp://blackdown.org/

p2376472_8174_LINUX.zip(134488247Б)-кумулятивныйпатч,устраняющийдовольнобольшоеколичестворазличныхошибоквOracle8i(8.1.7.0)иподнимающийOracle8iдоверсии8.1.7.4.Натекущиймоментэтопатчдоступенhttp://metalink.oracle.com/,доступнаэтотресурсявляетсяплатным.НоприжеланиинайтиэтотфайлвInternetнесоставиттруда.ВедьуВас"картывруках"-имяфайла.;-)Вкрайнемслучае,можноподнятьOracle8iдоверсии8.1.7.3,этоткумулятивныйпатчдоступеннаофициальномFTP-сервереOracleCorporationинатекущиймоментбесплатный.Файлp2189751_8173_LINUX.zip(121801951Б)можнозагрузитьпоссылкенадиректориюсFTP-сервераftp://oracle-ftp.oracle.com/server/patchsets/unix/LINUX/817patchsets/.Овыходеновыхкумулятивныхпатчейвсегдаможноузнатьнастраницеhttp://otn.oracle.com/support/patches.htm
3.Устанавливаемсвопразмеромв1ГБ
Еслисвоправен1ГБилибольше,тоневыполняйтеэтотпункт.

Еслижеразмерсвопаменьше1ГБинадискахВашеймашинынетнеразмеченногоместадляегосоздания,тоспомощьюкомандыdfопределите,вкакойфайловойсистемеуВасесть1ГБсвободногоместа,исоздайтефайлswap.Например,дляразмещенияфайлаswapвдиректории/usr,выполнимследующиекоманды:

#cd/dev

#sh./MAKEDEVvn0

#ddif=/dev/zeroof=/usr/swapbs=1024kcount=1024

#chmod0600/usr/swap

#echoswapfile="/usr/swap">>/etc/rc.conf

Примечание:ЕслиВыпроизводитеустановкунаFreeBSD-5.x,токомандыcd/devиsh./MAKEDEVvn0выполнятьненадо.

Реальнодляработылучшеделатьсвопневфайле,атак,какэтоположено-выделитьдляэтогоразделнадиске.Поэтомувбудущемрешитеэтотвопрос,нодомомента,когдауВаспоявитсядополнительныйдиск,можноиспользоватьиэтотвариант.
4.Инсталлируемemulators/linux_base-6иdevel/linux_devtools-6
Портыemulators/linux_base-6иdevel/linux_devtools-6должныустановитьпакетыотдистрибутиваLinuxRedHat6.1ичастичноот6.2.

#cd/usr/ports/emulators/linux_base-6

#makeinstallclean&&rehash

#cd/usr/ports/devel/linux_devtools-6

#makeinstallclean&&rehash

Будьтевнимательны!Вколлекциипортовимеютсяпорты,устанавливающиепакетыотLinuxRedHat7.1emulators/linux_baseиdevel/linux_devtool-7-этипакетынеподойдут!Oracle8iдляLinuxсобрансglibc-2.1.3,именноэтаверсияglibcимеетсявпортахнамоментнаписанияэтойстатьи.

$FreeBSD:ports/emulators/linux_base-6/Makefile,v1.702003/04/0821:47:06trevorExp$

$FreeBSD:ports/devel/linux_devtools-6/Makefile,v1.342003/02/2017:06:51knuExp$
5.Дополнительноустанавливаемпакетprocps-2.0.4-2.i386.rpm
ДополнительнокэмуляцииLinuxустанавливаемпакетprocps-2.0.4-2.i386.rpm.БезнегоуВаснаFreeBSD,установщикOracle8iнесможетнормальнозавершитьсвоюработу-онпопростузависнетприпопыткесозданиябазыданных.Апроисходитэтоиз-затого,чтововремяинсталляциивызываетсяутилитаdbassist,котораябезпакетаprocps-2.0.4-2.i386.rpmнаFreeBSDработатьнехочет.Вотчтобыэтогонепроизошло,Выиустановитепакетprocps-2.0.4-2.i386.rpm,которыйдоэтогодолжныбылиположитьвдиректорию/usr/oinstall.

#cd/usr/oinstall

#rpm-U--ignoreos--root/compat/linux--dbpath/var/lib/rpm--nodeps--replacepkgsprocps-2.0.4-2.i386.rpm
6.ВключаемподдержкусовместимостисLinux.
ВключаемподдержкусовместимостисLinux.Вфайле/etc/rc.confнужнодобавитьстрокуlinux_enable="YES"

#echolinux_enable="YES">>/etc/rc.conf
7.Создаемсимволическуюссылку/compat/linux/etc/mtab
Создаемсимволическуюссылку,котораябудетнеобходимаOracle8iдляполученияинформацииоВашем(-их)диске(-ах).

#ln-s/etc/fstab/compat/linux/etc/mtab
8.Вносимизмененияв/etc/fstab
Вфайле/etc/fstabпослестроки,гдеописываетсяproc,добавьтевтекстовомредакторестроку

linproc/compat/linux/proclinprocfsrw00

исохранитефайл.
9.Создаемутилитуarch
Создаемутилитуarch,котораявLinuxиспользуетсядлявыводаинформацииобархитектуремашины.

#echoechoi686>/compat/linux/bin/arch

#chownroot:wheel/compat/linux/bin/arch

#chmod0755/compat/linux/bin/arch
10.УстанавливаемJREотblackdown.org
УстанавливаемJREотblackdown.orgв/compat/linux/usr/local

#cd/compat/linux/usr

#mkdirlocal

#cdlocal

#tar--bzip2-xvf/usr/oinstall/jre118_v3-glibc-2.1.3.tar.bz2

#cdjre118_v3

#ln-s.linux

#cdbin

#ln-si686linux

#cd../lib

#ln-si686linux

Такоеколичествосимволическихссылокобъясняетсятем,чтонекоторыеутилитыOracle8iиспользуютэтипути,аразиспользуют,значит,онидолжныбытьдлятого,чтобыобеспечитьнормальнуюработуэтихутилит.
11.УстанавливаемJDK1.2.2отSunMicrosystems,Inc.
УстанавливаемJDK1.2.2дляLinuxотSunMicrosystems,Inc.ДистрибутивJDKпридетсязагрузитьсамостоятельноиположитьвдиректорию/usr/ports/distfiles.Чтобыузнать,откудаегоможнозагрузить,зайдитевдиректориюпортаjava/linux-sun-jdk12ивыполнитекомандуmakeсцельюfetch,вответВыполучитесообщение,разъясняющее,откудаможнозагрузитьдистрибутив.Послезагрузкиустановкапроисходитобычнымдляколлекциипортовспособом.

#cd/usr/ports/java/linux-sun-jdk12&&makeinstallclean&&rehash

Oracle8iбудетвидетьJDKкак/usr/local/java,номыустанавливаемдистрибутивOracle8iподLinux,поэтомунеобходимосоздатьпуть/compat/linux/usr/local/java

#cd/compat/linux/usr/local

#ln-s/usr/local/linux-sun-jdk1.2.2java
12.РаспаковываемдистрибутивOracle8i
РаспаковываемдистрибутивOracle8iипроводимнаднимнебольшиеманипуляции.

#cd/usr/oinstall

#tar-xfvlinux81701.tar

#cdDisk1

#mv*/usr/oinstall

#cd..

#rm-rfDisk1

ВрезультатеданныхдействийполучилираспакованныйдистрибутивOracle8iвдиректории/usr/oinstall/Disk1,ачтобывбудущемнажиматьменьшеклавиш,содержимоеDisk1перенеслипрямов/usr/oinstall,адиректориюDisk1удалили.
13.ВносимизменениявдистрибутивOracle8i
ВносимвдистрибутивOracle8iисправления,приэтомделаякопиюоригинальныхфайлов.

Необходимо,чтобывфайле/usr/oinstall/runInstallerпеременнойTHREADS_FLAGбылоприсвоенозначениеgreen,анеnative.

#cd/usr/oinstall

#sed-i.orig-e"s|THREADS_FLAG=native|THREADS_FLAG=green|g"runInstaller

Теперьотредактируемфайл/usr/oinstall/install/oraparam.ini,заменивстрокуJRE_LOCATION=../stage/Components/oracle.swd.jre/1.1.8/1/DataFiles/Expanded/linuxнаJRE_LOCATION=/usr/local/jre118_v3/linux

#cdinstall

#sed-i.orig-e"s|../stage/Components/oracle.swd.jre/1.1.8/1/DataFiles/Expanded/linux|/usr/local/jre118_v3/linux|g"oraparam.ini

Конечно,необязательноприменятьдляизменениястрокsed,ВыможетеисправитьфайлывлюбомудобномдляВастекстовомредакторе.
14.Распаковываемкумулятивныйпатч
Распаковываемвдиректорию/usr/oinstall/patch,котораяпоявиласьпослераспаковкидистрибутиваOracle8i,кумулятивныйпатч,находящийсявфайлеp2376472_8174_LINUX.zip.Файлzip-архивасодержитвсебедвафайла:lnx32_8174_patchset.tarиREADME.html.

#cd/usr/oinstall

#unzipp2376472_8174_LINUX.zip

#cdpatch

#tar-xvf../lnx32_8174_patchset.tar

#rm../lnx32_8174_patchset.tar

ПрочтитефайлREADME.html,чтобыбытьвкурсетого,чтоисправляетданныйпатч.
15.Создаемгруппыdbaиoinstall
СоздаемгруппыdbacGID94иoinstallcGID95.

#pwgroupadd-ndba-g94

#pwgroupadd-noinstall-g95
16.Создаемпользователяoracleиназначаемемупароль
СоздаемпользователяoraclecUID94ипомещаемеговгруппыdba,oinstallиwheel,акомандныйинтерпретатордадим/compat/linux/bin/bash.

#pwuseradd-noracle-u94-c"OracleDaemon"-d/usr/oracle-s/compat/linux/bin/bash-gdba-Goinstall,wheel

Вгруппуwheelмыпомещаемпользователяoracle,чтобыобеспечитьнебольшойкомфортприинсталляции.Вовремяустановкибудутпериодическитребоватьсяправасуперпользователя,поэтомунадоразрешитьпользователюoracleвыполнятькомандуsuдляполученияправсуперпользователя.Получатьправасуперпользователяспомощьюкомандыsu,могуттолькочленыгруппыwheel,поэтомунаминеобходимосделатьнавремяинсталляции,пользователяoracleчленомэтойгруппы.

Можноконечновыполнятькоманды,требующиеправсуперпользователя,непосредственновойдявсистемусуперпользователемсдругойконсоли,нонамойвзгляд,командаsuвыполненнаявокнеxtermболеекомфортна,таккаквсенаодномэкраневXWindowSystemивсеподрукой,аэтозначитменьшешансовсделатьневерныедействия.:-)

Когдаустановкабудетзакончена,мыуберемпользователяoracleизгруппыwheel.Апоканазначаемпарольдляпользователяoracle.Нестоитпренебрегатьмерамибезопасности,поэтомуненадовводитьпустойилилегкоподбираемыйпарольпользователюoracle.

#passwdoracle
17.СоздаемдиректориюдляустановкиOracle8i.
МыбудемустанавливатьOracle8iвсоответствиисрекомендациямиOptimalFlexibleArchitecture(OFA).Ядумаюнестоитигнорироватьэтирекомендации,практикаэксплуатациипродуктовOracleпоказывает,чтовбудущемэтопозволитэффективноиспользоватьиобновлятьих,атакжегибкоуправлятьпостояннорастущимиобъемамиинформации.ЕслиВыещенезнаете,чтотакоеOFA,тодокументация,идущаявместесдистрибутивомOracle8i,поможетВамвэтомразобраться.

Согласнорекомендациижелательно,чтобыустановкапроизводиласьнаотдельнуюфайловуюсистему,ктомужежелательно,чтобыэтафайловаясистемабыларасположенанаотдельномдискеипримонтированавточкумонтирования,расположеннуювкорне.Вотмысейчасисоздадимэтуточкумонтирования.

#mkdir/m01

#chmod0775/m01

#chownoracle:oinstall/m01

Дальшевэтомпунктестатьипутитех,укогоестьвозможностьсозданияотдельнойфайловойсистемыитех,укоготакойвозможностипоканет,навремяразойдутся.

ЕслиуВасестьнеразмеченноеместо,тосоздайтеновуюфайловуюсистемуUFS,размеромнеменьше2ГБ.Описаниепроцессасозданияновойфайловойсистемывыходитзарамкиэтойстатьи,Выдолжнывыполнитьэтосамостоятельно.Послесозданияфайловойсистемызапишеминформациюоновойфайловойсистемевфайл/etc/fstab,сточкоймонтирования/m01.

#echo"/dev/device/m01ufsrw22">>/etc/fstab

Наместо/dev/device,Выдолжныподставитьфайлустройствапартицииновойфайловойсистемы!

Теперьнадопримонтироватьновуюфайловуюсистемуисоздатьвнейдиректориюapp.

#mount/m01

#mkdir/m01/app

#chmod0775/m01/app

#chownoracle:oinstall/m01/app

Вотивсе,можетепереходитькследующемупунктустатьи,дальшебудутрекомендациидлятех,укогонетвозможностисозданиядополнительнойфайловойсистемы.

Есливозможностидлясозданияновойфайловойсистемынет,всвязисотсутствиемнеразмеченногоместанадисках,топридетсяпойтидругимпутем,смонтируемдиректорию/compat/linux/m01вдиректорию/m01,вэтомнампоможетзамечательнаякомандаmount_nullнаFreeBSD-4.xиликомандаmount_nullfsнаFreeBSD-5.x.

НаFreeBSD-4.xвыполняем:

#echo"/compat/linux/m01/m01nullrw00">>/etc/fstab

НаFreeBSD-5.xвыполняем:

#echo"/compat/linux/m01/m01nullfsrw00">>/etc/fstab

Остальныекомандыбудутодинаковы,какдляFreeBSD-4.x,такидляFreeBSD-5.x.

#mkdir/compat/linux/m01/compat/linux/m01/app

#chmod-R0775/compat/linux/m01

#chown-Roracle:oinstall/compat/linux/m01

#mount/m01

Сделайтеименнотак,какрекомендовано,смонтируйтедиректорию/compat/linux/m01вдиректорию/m01.Неделайте/m01символическойссылкойнадиректорию/compat/linux/m01.ЕслиВасинтересуетпочему,торекомендуюпочитать,какипочемуработаютLinux-приложениянаFreeBSD,апотомпосмотреть,какойразмеркорневойфайловойсистемыуВашейFreeBSD.Вероятно,еслиВыустанавливалиFreeBSDвздравомуме,тоэто192МБ?Нумаксимум256МБ?ЭтогооченьмалодляустановкиOracle8i.:-)УстановщикOracle8iполучитименноэтуинформацию,офайловойсистемевкоторойрасположенадиректория/m01,иоткажетсяустанавливатьтудачто-либо.Поэтомумыисмонтировалидиректориювдиректорию.ТеперьдляВашейсистемывдиректории/m01отдельнаяфайловаясистема.

Потом,когдаВыобзаведетесьдополнительнымдискомисоздадитенанемотдельнуюфайловуюсистему,будетдостаточносоответствующеотредактировать/etc/fstab,смонтироватьэтуфайловуюсистемув/m01иперенестисодержимое/compat/linux/m01в/m01,адиректорию/compat/linux/m01удалить.Возможно,приэтомВыпервыйразиспытаетепреимуществоOFA.;-)
18.Создаемдомашнююдиректориюдляпользователяoracle
Создаемдомашнююдиректориюдляпользователяoracle.

#mkdir/usr/oracle

#cd/usr/oracle

ВлюбомтекстовомредакторенаберитеБЕЗОШИБОКтекстовыйфайлссодержимымприведеннымниже,исохранитеэтотфайлкак/usr/oracle/.profile

ORACLE_BASE=/m01/appORACLE_HOME=$ORACLE_BASE/product/oracle/8.1.7ORACLE_DOC=$ORACLE_HOME/docORACLE_SID=OSIDexportORACLE_HOMEORACLE_BASEORACLE_SIDORACLE_DOCNLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1#NLS_LANG=AMERICAN_CIS.UTF8#NLS_LANG=AMERICAN_CIS.CL8ISO8859P5#NLS_LANG=AMERICAN_CIS.CL8MACCYRILLIC#NLS_LANG=AMERICAN_CIS.CL8MSWIN1251#NLS_LANG=AMERICAN_CIS.CL8KOI8RORA_NLS32=$ORACLE_HOME/ocommon/nls/admin/dataORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataLD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/precomp/libexportNLS_LANGORA_NLS32ORA_NLS33LD_LIBRARY_PATHJRE_LOCATION=/usr/local/jre118_v3PERL5LIB=$ORACLE_HOME/Apache/perl/lib/5.00503TMPDIR=/var/tmpPATH=$PATH:$ORACLE_HOME/binexportJRE_LOCATIONPERL5LIBTMPDIRPATHumask022unsetLANGunsetLC_ALL

ЕслиВысобираетесьиспользоватьсистемууправленияреляционнойбазойданных(СУРБД)Oracle8iнатерриторииРоссии,тотрудностьвпониманииэтогофайла,видимо,вызоветтолькозначение$NLS_LANG.Ужвчем"повезло"русским,такэтосколичествомразличныхнаборовсимволов.:-)Поэтомумаленькоеразъяснениенепомешает.

Переменнаяокружения$NLS_LANGпринимаетзначенияLANGUAGE_TERRITORY.CHARACTERSET,гдеLANGUAGE-указываетнаязыксообщений;TERRITORY-указывает,какнужнопредставлятьдаты,разделителиит.п.,атакжеопределяетсортировкупоумолчанию;CHARACTERSET-указываетязык,вкоторомработаетклиентижелаетвидетьивводитьданные.

ДлятогочтобыСУРБДOracle8iвыдаваласообщениянарусскомязыкеможноопределитьзначениеLANGUAGEравнымRUSSIAN.

ЗначениеTERRITORYдлястранСНГравноCIS.Сортировкупоумолчаниюможнопереопределить,спомощьюпеременнойокружения$NLS_SORT.

ЗначениеCHARACTERSETдлярусскихкодировокможетприниматьзначения:CL8ISO8859P5,RU8PC866,RU8BESTA,RU8PC855,CL8MACCYRILLIC,CL8MACCYRILLICS,CL8MSWIN1251,CL8KOI8R,UTF8.

Примечание:ВслучаееслиВысобираетесьиспользоватьOracleInternetDirectory(OID),тоВашвыбордолженобязательноостановитьсянаUTF8.
19.Создаемфайл/usr/oracle/root
Втекстовомредакторенаберитетекст,приведенныйниже,исохранитеегокакфайл/usr/oracle/root.

#!/bin/sh#Переходимвдиректорию$ORACLE_HOMEиделаемкопиюфайлаroot.shcd$ORACLE_HOMEcproot.shroot.sh.orig#Вносимисправлениявфайлroot.shsed-es|/bin/chown|/usr/sbin/chown|groot.sh.orig|sed-es|/usr/bin/test|/bin/test|g|sed-es|/bin/awk|/usr/bin/awk|g|sed-es|/bin/grep|/usr/bin/grep|g|sed-es|/usr/local/bin/sed|/usr/bin/sed|g|sed-es|RMF=/bin/rm-f|RMF="/bin/rm-f"|g|sed-e"s|){print$1}`|){print$1}`|g">root.sh#Удаляемфайлroot.sh.origrmroot.sh.orig#Переходимв$ORACLE_HOME/binивносимизменениявnetasstивnetcacd$ORACLE_HOME/bincp-pnetasstnetasst.origcp-pnetcanetca.origsed-es|$JRE-classpath|$JRE-native-classpath|gnetasst.orig>netasstsed-es|$JRE-classpath|$JRE-native-classpath|gnetca.orig>netca#ВносимисправлениявовсефайлысообщенийСУРБДOracle8iотвечающихзасообщениянарусскомязыкеechoecho$1cp-p$1$1.origprintf"03144311231743434044204000000000">$1ddif=$1.origof=$1bs=16seek=1skip=1>/tmp/$$.ru.msb.shfind$ORACLE_HOME-follow-name"*ru.msb"-exec/bin/sh/tmp/$$.ru.msb.sh{}";"rm/tmp/$$.ru.msb.sh

Этотфайл,какипакетprocps-2.0.4-2.i386.rpm,оченьсильноповлияетнаустановщикOracle8i,чтобыобеспечитьегонормальнуюработу.

ВовремяустановкиOracleUniversalInstallerбудетпроситьВасзапуститьфайл$ORACLE_HOME/root.sh,которыйсодержитнеправильныепутиккомандамсточкизренияFreeBSD,идвесинтаксическиеошибкисточкизрениякомандногоинтерпретатораsh.Вотпередзапуском$ORACLE_HOME/root.sh,Выизапустите/usr/oinstall/root,которыйисправитвсеэтиошибки.

Непутайтескрипт$ORACLE_HOME/orainstRoot.sh,которыйВамтожеещепредстоитзапускать,искрипт$ORACLE_HOME/root.sh,этодваразныхфайла!

Изменениявnetasstивnetca,которыетакжевносит/usr/oracle/root,делаютсядлятого,чтобыобеспечитьнормальнуюработуNet8ConfigurationAssistantнаFreeBSD.Скриптыnetasstиnetcaвовремяустановки,запускаяJREбезключа-native,приводяткневернойработеNet8ConfigurationAssistant,чтовлечетзасобойзависаниеустановщикаOracle8i.Следовательно,необходимопозаботиться,чтобыэтогонепроизошло,чтоисделает/usr/oinstall/root.

Вфайлахсрасширением*.msbсохраненысообщенияотразличныхкомпонентовСУРБДOracle8i,которыебудутвыдаватьсявовремяработысСУРБД.Изменениявфайлы*ru.msbвносятсядлятого,чтобысообщениянарусскомязыке,выдаваемыеСУРБДOracle8iвовремяееработы,правильноперекодировалисьнасторонеклиента.Тоесть,еслиВырешитеназначитьпеременнуюокружения$NLS_LANGcLANGUAGEравнойRUSSIAN,тоСУРБДбудетразговариватьнарусскомязыке,нобезизмененияфайлов*ru.msb,этисообщениябудутвневернойкодировке.СУРБДOracle8iможетразговариватьнасамыхразличныхязыках,достигаетсяэтозасчеттого,чтоСУРБДвзависимостиотзначенияLANGUAGEвпеременнойокружения$NLS_LANGиспользуетдлясообщенийтеmsb-файлы,которыепредназначеныдляэтогоязыка.Еслинакакой-токомпонентСУРБДOracle8iотсутствуютmsb-файлыстребуемымязыком,тоСУРБДигнорируетзначениеLANGUAGEвпеременнойокружения$NLS_LANGииспользуетдлявыдачисообщенийmsb-файлыдляанглийскогоязыка.Первые16байткаждогоmsb-файланесутинформациюокодировкевкоторойсохраненысообщениявсамомmsb-файле,ифайлы*ru.msbотвечающиезасообщениянарусскомязыке,здесьнеисключение.Давотбеда,наборсимволоввРоссиинеодин,идаженедва...:-)Ивотсрусскимиmsb-файлами,приключиласьнеприятнаяисториявнедрахкорпорацииOracle.Вфайлах,*ru.msbпервые16байт,должныиметьследующуюпоследовательность:

дляCP1251

030C230D1317090E1C1D201C00000000

дляISO8859-5

030C2309130F23232024102000000000

дляCP866

12152310032321210000000000000000

Сообщенияперекодируютсяизкодировкиmsb-файлавкодировку,указаннуювчастиCHARACTERSET,переменнойокружения$NLS_LANG,иеслизаголовокmsb-файланеверный,товместонужноготекстаидет"китайскаяграмота".Именноэтоипроизошлосфайлами*ru.msb,сообщениявэтихфайлахсохраненывкодировкеISO8859-5,апервые16байтговорят,чтосообщениявCP1251.Поэтомускрипт/usr/oracle/rootипредусматриваетизменениевфайлах*ru.msbпервых16байт,записываявначалокаждогорусскогоmsb-файлаправильнуюпоследовательностьбайт,которыеинформируютСУРБДOracle8i,чтоисходныесообщениявкодировкеISO8859-5.ДажееслиВынесобираетесьустанавливатьподдержкурусскогоязыка,токакминимумодинmsb-файлдлякаждогоязыкавсеравнобудетустановленвдиректорию$ORACLE_HOME/oracore/mesg,втомчислеиодиннеправильныйmsb-файлрусскихсообщений.

Однакодомомента,когдабудетнужнозапустить/usr/oinstall/root,придетсяещепоработать,поэтомупоказабудемпроэтотфайл.
20.Передадимдиректорию/usr/oracleпользователюoracle
Передаемдиректорию/usr/oracleивсееесодержимоевраспоряжениепользователюoracle.

#chmod0755/usr/oracle

#chmod0644/usr/oracle/.profile

#chmod0644/usr/oracle/root

#chown-Roracle:dba/usr/oracle
21.Создаемконфигурациюновогоядра
СоздаемконфигурациюновогоядрасподдержкойSystemV.Необходимо,чтобывновойконфигурацииобязательноприсутствовалиследующиепараметры:

maxusers512optionsNBUF=2048optionsMAXDSIZ="(1024*1024*1024)"optionsMAXSSIZ="(1024*1024*1024)"optionsDFLDSIZ="(1024*1024*1024)"#SystemVsharedmemoryandtunableparametersoptionsSYSVSHM#includesupportforsharedmemoryoptionsSHMMAXPGS=65536#maxamountofsharedmemorypages(4koni386)optionsSHMMIN=2#minsharedmemorysegmentsize(bytes)optionsSHMMNI=256#maxnumberofsharedmemoryidentifiersoptionsSHMSEG=256#maxsharedmemorysegmentsperprocess#SystemVsemaphoresandtunableparametersoptionsSYSVSEM#includesupportforsemaphoresoptionsSEMMAP=512#amountofentriesinsemaphoremapoptionsSEMMNI=512#numberofsemaphoreidentifiersinthesystemoptionsSEMUME=512#maxnumberofundoentriesperprocessoptionsSEMMNS=1024#numberofsemaphoresinthesystemoptionsSEMMNU=512#numberofundostructuresinthesystemoptionsSEMMSL=256#maxnumberofsemaphoresperidoptionsSEMOPM=256#maxnumberofoperationspersemopcall#SystemVmessagequeuesandtunableparametersoptionsSYSVMSG#includesupportformessagequeuesoptionsMSGMNB=8192#maxcharacterspermessagequeueoptionsMSGMNI=256#maxnumberofmessagequeueidentifiersoptionsMSGSEG=8192#maxnumberofmessagesegmentsinthesystemoptionsMSGSSZ=16#sizeofamessagesegmentMUSTbepowerof2optionsMSGTQL=128#maxamountofmessagesinthesystem

Примечание:НаFreeBSD-5.xопциямMAXDSIZ,MAXSSIZиDFLDSIZнеобходимоприсвоитьзначенияследующимобразом:

optionsMAXDSIZ=(1024UL*1024*1024)optionsMAXSSIZ=(1024UL*1024*1024)optionsDFLDSIZ=(1024UL*1024*1024)

Дляназванияконфигурацииядравыберембукву"K",отслова"kernel",итекущуюдатувформатегод,месяц,день(YYYYMMDD):

#cd/usr/src/sys/i386/conf

#cpGENERICK20021204

Правимконфигурацию/usr/src/sys/i386/conf/K20021204влюбомудобномдляВасредакторе,добавляянужноеиудаляявсененужное.Ноопции,приведенныевыше,должныприсутствоватьобязательно!

СУРБДOracleтребовательнакколичествуразделяемойсистемнойпамяти,значениекоторойзадаетсяопциейядраSHMMAX.СовокупностьпроцессовСУРБДOracleиструктурданных,размещенныхвразделяемойсистемнойобласти,называетсяэкземпляром.СогласнорекомендациямпоиспользованиюСУРБДOracle8i,вядренеобходимовыставитьопциюядраSHMMAXвбайтахвразмереобщегообъемафизическойоперативнойпамяти,умноженнойнакоэффициент,равный0.5.ЕслизначениеSHMMAXбудетнедостаточно,тоэкземплярOracle8iпростонебудетсоздан!НовядреFreeBSDданнаяопцияядразависитотопцииSHMMAXPGSпоформуле:

SHMMAX=SHMMAXPGS*PAGE_SIZE+1



ГдеPAGE_SIZEравно4096Бдляi386,поэтому,чтобысделатькакрекомендовановдокументациипоOracle8i,необходимозначениеSHMMAXPGSвычислитьпоформуле,

SHMMAXPGS=k*RAM*1024/PAGE_SIZE

ГдеRAM-физическаяоперативнаяпамятьвМБ;k-коэффициент,равный0.5;PAGE_SIZE-размероднойстраницывКБ,PAGE_SIZE=4КБдляi386.

Например,длямашиныспамятью512МБ,SHMMAXPGS=0.5*512*1024/4=65536.

Вслучае,еслипредполагается,чтоСУРБДOracle,будетработатьнаспециальновыделенномдляэтогосервере,икроменееникакихдругихсерьезныхсервисовзапущенонебудет,токоэффициентk,можноувеличиватьдо0.75,это3/4отфизическойоперативнойпамяти.

Длятого,чтобыпонятькакоевлияниеоказываютнекоторыезначенияопцийядранаработуСУРБДOracle,обязательноознакомьтесьсдокументацией,котораяидетвместесдистрибутивомOracle8i.
22.Компилируемядросновойконфигурацией
Компилируемядросновойконфигурацией(K20021204).Есличто-тонепойдетприсборкеядра,внимательноизучитефайл/usr/src/buildkernel.logипослеэтогоищитеошибкивВашейконфигурацииядра.

#cd/usr/src

#makebuildkernelKERNCONF=K20021204|&teebuildkernel.log
23.Устанавливаемновоеядро
Устанавливаемновоеядро.Результатустановкибудетсохраненвфайле/usr/src/installkernel.log

#cd/usr/src

#makeinstallkernelKERNCONF=K20021204|&teeinstallkernel.log
24.Удаляемфайлыbuildkernel.logиinstallkernel.log
Есликомпиляцияиустановкаядравыполненыуспешно,тофайлыbuildkernel.logиinstallkernel.logможноудалить.

#rm/usr/src/buildkernel.log

#rm/usr/src/installkernel.log
25.Директории/tmp,/usr/tmp,/var/tmp
Сделаемтак,чтобы/tmpи/usr/tmpуказывалина/var/tmp.Передтем,какначатьманипуляциисдиректорией/tmp,завершитевсепроцессывсистеме,которыесоздаливнейсвоивременныефайлы.Тожесамоекасаетсяи/usr/tmp.Какправило,/tmpэтоотдельнаяфайловаясистемасвесьмаограниченнымразмером,еслиуВасименнотак,торазмонтируйтеее,удалитедиректорию/tmpизакомментируйтефайловуюсистему/tmpвфайле/etc/fstabилиукажитедругуюточкумонтированиядляосвободившейсяфайловойсистемы.ОБЯЗАТЕЛЬНООТРЕДАКТИРУЙТЕ/etc/fstab!ЕслиуВасэтообычнаядиректория,токомандуumountвыполнятьненадоиправить/etc/fstab,естественновамнепридется.

#umount/tmp

Удаляем/tmpи/usr/tmp

#rm-rf/tmp

#rm-rf/usr/tmp

Создаемсимволическиессылкина/var/tmp

#ln-s/var/tmp/tmp

#ln-s/var/tmp/usr/tmp

Гарантируемправа0777надиректорию/var/tmp,авладельцемэтойдиректорииназначимсуперпользователяигруппуwheel.

#chmod0777/var/tmp

#chownroot:wheel/var/tmp
26.Перезагрузкасистемы
Итак,ВыподготовилисистемудляустановкиOracle8i-установиливсенеобходимыепрограммыиподготовилидистрибутивOracle8i,внеслиизменениявнекоторыеконфигурационныефайлысистемы,установилиновоеядро,следовательно,необходимоперегрузиться.

#reboot

Вслучае,еслиВашеновоеядрооткажетсязагружаться,обратитеськ"FreeBSDHandbook",чтобывыяснитькаквосстановитьизагрузитьстароеядро,тамэтоподробнорасписано.Затемищитеошибкивсвоейконфигурацииядра,исправляйтеихисобирайтеядрозаново(см.п.21,п.22ип.23).

ЕслиВашасистемазагрузиласьсновымядром,томожетепоздравитьсебя-половинупутиВыужепрошли.

Новыеопцииядраможнопосмотреть,используякомандуsysctl.

#sysctl-a|grepkern.ipc|more
27.Останавливаемвеб-серверApache
ЕслиуВасустановленизапущенвеб-серверApache,лучшеегопокаостановить!

#[-r/var/run/httpd.pid]&&/usr/local/sbin/apachectlstop

Возможно,Вашapachectlнаходитсявдругойдиректории,афайлпроцессанаходитсявдругомместе,выяснитеэтосамииостановитеApache.

Сразуоговорюсь,еслиВывдальнейшемсобираетесьиспользоватьвеб-серверпоставляемыйсOracle8i,тототApacheкоторойуВасужеестьвсистемелучшенезапускать,когдаработаетвеб-серверOracle8i.ИлиубирайтеизсвоейсистемыВашApacheвообще,илисделайтетак,чтобыоннемогстартоватьавтоматическиприперезагрузкесистемы.ТожесамоеотноситсяикOpenLDAPвслучаеиспользованияOracleInternetDirectory(OID).
28.ЗапускаемXWindowSystem
ТеперьнеобходимовойтивXWindowSystemподпользователемoracle.Вкачествеоконногоменеджерадляпользователяoracleсойдетtwm.Ктомуже,twmпотребляеточеньмалосистемныхресурсов,которыеоченьсильнопригодятсяприустановкеOracle8i.

ВсвоейсистемеяиспользуюxdmдлявходавXWindowSystemна8-ойвиртуальнойконсоли,поэтомумнебылодостаточнонажатьAlt+F9,азатемввестилогинипарольпользователяoracle.
29.Читаемпеременныеокруженияпользователяoracle
Запуститеxterm,еслионнезапустилсяуВасавтоматически,ивыполнитевнемкомандуbashсключем-login.

%bash-login

Послевыполненияданнойкомандыприглашениевкоманднойстрокедолжносмениться,показываяпользователяoracle,имяхостаитекущуюдиректорию.Чтобыудостовериться,чтовсепеременныеокруженияпрочитаныизфайла/usr/oracle/.profile,выполнитевэтомжеокнеxtermкомандуsetиубедитесь,чтовсекорректно.

%set|more
30.Откроемокноxtermдлясуперпользователя
Запускаемещеодноокноxterm,изтого,гдемывыполнялиbash-login.Запускименноизэтогоокнанеобходимдлятого,чтобысуперпользователюдосталисьвсепеременныеокруженияпользователяoracle.Наличиеэтихпеременныхвокружениисуперпользователя,всвоюочередьизбавитВасотутомительногонабиранияпутейккомандам,выполнениекоторыхбудеттребоватьустановщикOracle8i.:-)

%xterm&

Теперьвновомокнеxtermвыполнимкомандуsu.Вамбудетпредложеноввестипарольсуперпользователя,послевводакоторогоВыполучитекомандныйинтерпретаторнаправахсуперпользователя.

%su

Мысоздалиэтотсеанссуперпользователявовсенеизпраздныхцелей,оннамещеоченьсильнопригодитсявовремяустановкиOracle8i.Теперьнавремязабудемпроэтоокноxtermипереключимсяобратновокноxtermпользователяoracle.
31.ЗапускаемустановщикOracle8i
%cd/usr/oinstall

%./runInstaller

ЗапускустановщикаOracle8iнаFreeBSDсравним,пожалуй,сзапускомдвигателямашины,когдатемператураокружающейсредыминус30градусовпоЦельсиюиниже.Спервогоразаможетинезавестись.;-)Дажеесливсерекомендации,предложенныевыше,выполненыправильно,тоиногда,хотяиоченьредко,установщикOracle8iможетзависнутьприпрорисовкезаставки.Этопроявляетсяввидепрямоугольникасерогоцвета,появляющегосянаэкране,снадписью"Loading...",послечегоможноподождать,иеслизаставкатакинепрорисовывается,товернитесьвокноxterm,спомощьюкомандыpsвыяснитеномерапроцессовrunInstallerиjre,изавершитеихприпомощикомандыkill.

%ps|grep"jre|runInstaller"

%killPIDPID

Затемудалитевдиректории/tmpвсефайлыидиректории,которыеуспелсоздатьустановщикOracle8i.Именафайловидиректорий,которыенеобходимоудалить,можновыяснитьповладельцуэтихфайлов.Онибудутпринадлежатьпользователюoracle.ДляудаленияВыможетевыполнитьследующее:

%cd/tmp&&find-d.-useroracle(-typef-or-typed)-delete-print

Затемсноваперейдитевдиректорию/usr/oinstallизапуститескриптrunInstaller.Совторогоразаустановщик,какправило,запускается.Вкрайнемслучае,повторитеэтовтретийраз.Логическогообъясненияэтомуявлениюяпоканайтинемогу,однакоинесчитаюэтомистикой,хотяоченьнатопохоже.ЭтапроблемавстречаетсянетольконаFreeBSD,нанекоторыхдистрибутивахLinuxполностьюаналогичнаяситуация.Условиядлязапускавпервыйивторойразабсолютноравные,нотакаявотчертовщина,иногдаслучается.

Еслинисовторого,нистретьегораза,установщикOracle8iтакинезапустился,товидимопроблеманев"запускедвигателяприсильномморозе",возвращайтеськначалустатьиипоследовательнопроверяйте,гдеВыошиблись.

НуаеслиВыувиделисначалазаставкуOracleUniversalInstaller,азатемпервыйэкрансприветствием,значитвсезамечательно.ГосподаизOracleCorporation,видимопредчувствовали,чтолюбойсистемныйадминистраторбудетдобиратьсядоэтогоэкранаоченьдолго,поэтомуирешилидляначалапоздороватьсясВами,чтобыразрядитьнапряженнуюобстановкуинемногорасслабитьВас.;-)

Рис.1.Первыйэкран,докоторогомытакдолгодобирались!:-)



Однако,небудемздесьзадерживатьсяоченьдолго,поэтомущелкаеммышьюпокнопкеNext.
32.ОтвечаемнавопросыOracleUniversalInstaller
НавторомэкранеВаспопросятвестипути(FileLocations).Путиктому,чтоВысобираетесьустанавливать(Source)икуда(Destination).Этипутиужезаполнены,значениетого,чтомысобираемсяустанавливатьвзятоизпеременной$SOURCEназначеннойвфайле/usr/oinstall/install/oraparam.ini,азначениекудаустанавливать,взятоизпеременнойокружения$ORACLE_HOME,пользователяoracle.Таккаквполяхстоятнужныедлянасзначения,топереходимкследующемуэкрану,спомощьюкнопкиNext.

ДалееВаспопросятввестигруппупользователей(UNIXGroupName)наВашеймашине,которыебудутиметьправообновлятьпродуктыOracle.ВведемгруппуoinstallищелкнеммышьюпокнопкеNext.

ПослеэтогоOracleUniversalInstallerпонадобятсяправасуперпользователядлязапускаскриптаorainstRoot.shвдиректории,накоторуюуказывает$ORACLE_HOME.Запускэтогоскриптанеобходим,чтобысоздатьфайл/etc/oraInst.loc.Вэтомфайлебудетсохраненаинформацияогруппе,котораяимеетправообновлятьпродуктыOracleнаВашейсистеме,ипутькдиректории,гдебудетхранитьсяинформацияобустановленныхпродуктахOracle.

Рис.2.OracleUniversalInstallerпроситВасзапуститьorainstRoot.sh



Переключимсявокноxterm,гдеунасзапущенкомандныйинтерпретаторсправамисуперпользователя,ивыполнимследующее:

#$ORACLE_HOME/orainstRoot.sh

#ln-s/etc/oraInst.loc/compat/linux/etc/oraInst.loc

ТеперьвернемсякустановщикуOracle8iинажмемкнопкуRetryдляпродолженияинсталляции.

ДалееустановщикспроситВас,какойпродуктВыбудетеустанавливать.ВыбираемOracle8iEnterpriseEdition8.1.7.0.1ипродолжаемспомощьюкнопкиNext.

Следующийвопроскоснетсятипаустановки.ЕслиВамненужнаразличнаяязыковаяподдержкадлякомпонентовСУРБДOracle8i,тоотметимпункттипичнойустановки-Typical(837MB)инажмемNext.

ЕслижеВамнеобходимо,чтобыкомпонентыСУРБДумеливыдаватьсообщениянаразличныхязыках,ноВынежелаетеразбиратьсясвыборочнойустановкой-Custom,томожнодоговоритьсясустановщикомOracle8iнасчетязыковипритипичнойустановке.Дляэтогоиспользуемвыборочнуюустановку,отмечаем-CustomинажимаемNext,врезультатечегобудетпредложеновыбратьразличныекомпонентыиязыки.НажимаемнакнопкуProductLanguages...идобавляемнеобходимыеязыки.ПослеокончаниявыбораязыковнужновернутьсяспомощьюкнопкиPreviousвпредыдущийэкран.Теперьотметимпункттипичнойустановки-Typical(837MB)инажмемNext.

ЕслиВыточнознаетеипонимаете,чтоВамнадоотСУРБД,томожетепроизвестивыборочнуюустановкуCustomилиминимальнуюMinimal(677MB),нодальшевстатьерассматриваетсятипичнаяустановка.

Посленебольшойповременисборкисведенийобустанавливаемыхкомпонентах,OracleUniversalInstallerпопроситВасввестипутькJDK.Поумолчаниюонпредложитпуть/usr/local/java,согласитесьспредложеннымпутемсразу,нажавNext.Помните,вп.11мыделалисимволическуюссылку/compat/linux/usr/local/java,вотименноэтуссылкумысейчасиуказалиустановщикуOracle8i,ведьLinux-приложениям,будетказаться,чтодиректорияjavaлежитв/usr/local.

НаследующемэкранеВампридетсязаполнитьполяGlobalDatabaseNameиSID.ТаккакSIDподставилсяавтоматическиизпеременнойокружения$ORACLE_SID,Вамостаетсятольковвестиглобальноеимябазыданных(GlobalDatabaseName).Преждечемввестиглобальноеимябазыданныххотелосьбынапомнить,чтовСУРБДOracleрекомендуетсяиспользоватьвименибазыданныхсоглашенияобименах,которыесоответствуютстандартнымсоглашениям,принятыхдлядоменовInternet.Всоответствиисэтим,имябазыданныхможетсостоятьизнесколькихчастейразделенныхточками.Имябазыданныхчитаетсясправаналево,акрайняяправаячастьобозначаетсякакworld.ЭтучастьсовсемнеобязательноуказыватьприработесNet8,нодляобеспечениясовместимостиспрежнимиверсиямиSQL*Netлучшеуказать.Крайняялеваячастьсодержитнепосредственноимябазыданных.Т.е.,например,имябазыданных,расположеннойвзонеdhs.net.ru,будетвыглядетькакDB.dhs.net.ru.world.

Руководствуясьвышесказанным,введитеВашеимядлябудущейбазыданныхиперейдитекследующемуэкрану,используявсетужекнопкуNext.

Таккаклюбой"допрос"когда-нибудьзаканчивается,этоттоженаконец-тозакончился.OracleUniversalInstallerспросилуВаснавсехпредыдущихэтапахсмоментасвоегозапускавсе,чтоемубылонепонятно.ПоэтомутеперьонпредоставилВамотчетотом,что,кудаисколько,онсобираетсяустановить,послушноожидая,когдаВынажметекнопкуInstall.

Рис.3.Затишьепер事实上,在任何DBaaS中,解决方案提供商对如何管理物理资源都没有控制权,因此MySQL学习教程可能会发现由于DBaaS的局限性使得他们提供给客户的远远小于客户所期望的。
若相依 该用户已被删除
沙发
发表于 2015-1-19 21:08:47 | 只看该作者
理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识
谁可相欹 该用户已被删除
板凳
发表于 2015-1-25 18:36:28 | 只看该作者
是要和操作系统进行Socket通讯的场景。否则建议慎重!
变相怪杰 该用户已被删除
地板
发表于 2015-2-3 13:09:14 | 只看该作者
不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关
因胸联盟 该用户已被删除
5#
发表于 2015-2-9 01:58:28 | 只看该作者
SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上.
小妖女 该用户已被删除
6#
发表于 2015-2-26 18:23:04 | 只看该作者
varchar(max)\\\\nvarchar(max)类型的引入大大的提高了编程的效率,可以使用字符串函数对CLOB类型进行操作,这是一个亮点。
乐观 该用户已被删除
7#
 楼主| 发表于 2015-3-8 16:28:59 | 只看该作者
where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。
分手快乐 该用户已被删除
8#
发表于 2015-3-16 05:36:52 | 只看该作者
多加的系统视图和实时系统信息这些东西对DBA挑优非常有帮助,但是感觉粒度还是不太细。
爱飞 该用户已被删除
9#
发表于 2015-3-22 20:13:42 | 只看该作者
从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 20:45

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表