Thứ Tư, 28 tháng 9, 2022

Shell Script để Backup MySQL Database

Backup MySQL Database using Linux Shell Script
[orahow@oradbdb DB_Backup]$ cat .backup_script.sh
#!/bin/bash
# Database credentials
user="root"
password="1Loginxx"
db_name="orahowdb"
v_cnt=0
logfile_path=/DB_Backup
touch "$logfile_path/orahowdb_backup.log"
# Other options
backup_path="/DB_Backup"
date=$(date +"%d-%b-%Y-%H-%M-%p")
# Set default file permissions
#umask 177
# Dump database into SQL file
mysqldump --user=$user --password=$password $db_name >$backup_path/$db_name-$date.sql

# Delete files older than 30 days
find $backup_path/* -mtime +15 -exec rm {} \;


#DB backup log
echo -e "$(date +'%d-%b-%y  %r '):ALERT:Database has been Backuped"    >>$logfile_path/orahowdb_backup.log
#confirmation mail to recepient
if [ "$?" -eq 0 ]
  then
   v_cnt=`expr $v_cnt+1`
mail -s "FYI : Orahow DB Backup Has Been Completed Successfully" -v -r support.alerts@mailserver.com recipient@gmail < /DB_Backup/orahowdb_backup.log
else
  mail -s "ALERT :  ORAHOW DB Backup Has Been Failed" -v -r support.alerts@mailserver.com recipient@support.com < /DB_Backup/orahowdb_backup.log
   exit
fi
rm /DB_Backup/orahowdb_backup.log
[orahow@orahowdb DB_Backup]$
=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty

Hướng dẫn chạy DBMS_SQLTUNE với câu lệnh SQL xác định

SQL Tuning Advisor

Tôi biết có thể thuận tiện hơn để chạy báo cáo tối ưu SQL bằng DBMS_SQLTUNE trong các công cụ như EM hoặc TOAD. Nhưng trong bài đăng này, tôi sẽ nói về cách tạo báo cáo tối ưu SQL chỉ bằng cách thực thi các câu lệnh theo nghĩa đen cho ID SQL cụ thể trong trường hợp bạn không thể sử dụng các công cụ và thứ hai, cách chấp nhận và triển khai các đề xuất điều chỉnh SQL sau đó.

Tổng hợp Các câu hỏi hay gặp về Tunning

1. Phương pháp Tunning Top-Down là như thế nào?

Thanh toán điện tử là gì? Ưu nhược điểm đối với doanh nghiệp

Với sự phát triển không ngừng của khoa học kỹ thuật cùng việc hạn chế sử dụng tiền mặt, thanh toán điện tử dần trở thành phương thức thanh toán được nhiều người tin dùng. Bài viết này sẽ thông tin đến bạn một số đặc điểm của thanh toán điện tử, ưu nhược điểm của phương thức thanh toán này đối với doanh nghiệp cũng như xu hướng việc làm hiện nay một cách chi tiết nhất.

Business Analyst (BA) là gì? Các ngành đào tạo Business Analyst

Có thể bạn đã từng nghe qua nhưng lại chưa hiểu rõ công việc của một Business Analyst trong ngành IT là gì? Bạn đang định hướng theo đuổi ngành nghề này và muốn tìm hiểu bước bắt đầu như thế nào? Vậy thì bài viết này chính xác là dành cho bạn. Hãy cùng tham khảo các nội dung sau đây để hiểu rõ hơn về vị trí Business Analyst (BA) nhé!

Kinh nghiệm việc làm Data Analyst là gì? Yếu tố cần để trở thành một Data Analyst giỏi

Trong thế giới tràn ngập thông tin như hiện nay, doanh nghiệp cần phải chắt lọc và phân tích dữ liệu mà mình thu thập được nhằm hỗ trợ cho việc ra quyết định kinh doanh. Và những người thực hiện những công việc này chính là Data Analyst. Vậy để hiểu rõ hơn về vị trí Data Analyst trong ngành IT là gì, hãy cùng mình tham khảo bài viết này nhé!

Data Science là gì? Tố chất để trở thành Data Scientist chuyên nghiệp

Trong thời đại công nghệ hiện nay, Data Science đã trở nên rất quen thuộc đối với những ai đang làm trong ngành công nghệ thông tin. Chắc hẳn đây cũng là ngành nghề mà nhiều “dân công nghệ” đang hướng đến. Vậy để hiểu rõ Data Science trong IT là gì và cần tố chất nào để trở thành Data Scientist chuyên nghiệp, hãy cùng mình tham khảo qua nội dung bên dưới bài viết này nhé!

Chuyện nghề: Data Scientist là gì? Và hành trình để trở thành Data Scientist

Mục lục:

  • Data Scientist là gì? 
  • Công việc của một Data Scientist
  • Data Science là gì ?
  • Phân biệt Data Scientist vs Data Engineer vs Data Analyst
  • Workload của một Data Scientist
  • Lộ trình trở thành Data Scientist trong năm 2022
  • Các ngôn ngữ Lập trình cơ bản
  • Python 
  • SQL
  • R
  • Hadoop

Hadoop là gì? Kiến trúc của Hadoop


Big Data đang trở thành một phần thế mạnh và là tài sản to lớn của mỗi công ty, và Hadoop là công nghệ cốt lõi cho việc lưu trữ và truy cập dữ liệu lớn.

Oracle TPS: Tính toán Transaction per Second

Oracle không có thông tin này rõ ràng và nó không phải là thước đo hữu ích nhất.

Nhưng để so sánh với các hệ thống khác và cả hiệu suất (performance)/ 'thông lượng' (throughput) với cấu hình cơ sở hạ tầng / cơ sở dữ liệu khác nhau, nó có thể hữu ích.

AWR có thể thấy điều này trên phần "Report Summary", trên "Load Profile", mục "Transaction" (ở đây transactions mỗi giây là 4.0):

Big Data là gì? Đặc điểm, vai trò và ứng dụng Big Data hiện nay


Trong thời đại công nghệ 4.0 hiện nay, các doanh nghiệp trong nhiều lĩnh vực khác nhau luôn chú trọng ứng dụng Big Data để phát triển việc kinh doanh của mình. Vậy Big Data là gì và ứng dụng của nó như thế nào? Hãy đọc tiếp bài viết để giải đáp các thắc mắc trên nhé! 

Thứ Ba, 27 tháng 9, 2022

FTP ADMINISTRATION trong solaris 11

ftp cmd  & Files:

/usr/lib/inet/proftpd
     /etc/proftpd.conf
     /etc/ftpusers
     /usr/bin/ftpwho
     /usr/bin/ftpcount
     /usr/bin/ftptop
                     
     /usr/sbin/ftpshut
     /var/log/xferlog
     /var/run/proftpd.pid
     /var/run/proftpd.scoreboard

Thứ Hai, 26 tháng 9, 2022

Tổng hợp câu hỏi thường gặp trong Quản trị CSDL Oracle

1. Có những cơ sở dữ liệu nào phổ biến hiện nay vậy Thầy Bình?
Trả lời: 

Cơ sở dữ liệu phổ biến hiện này các doanh nghiệp hay sử dụng gồm:
- Oracle Database
- SQL Server
- MySQL
- PostgreSQL
- IBM DB2
- MongoDB
...
Trong đó thông dụng nhất là Oracle Database

2. Khi học cơ sở dữ liệu Oracle em cần học những gì ạ?
Trả lời: 

Em cần học theo lộ trình sau trên các phiên bản 11g, 12c, 19c,...:
- Oracle Database Admin Workshop 1 (gọi tắt là Admin 1)
- SQL Fundamental 1, 2 (gọi tắt là SQL cơ bản)
- Thi chứng chỉ OCA (2 môn: SQL, Admin 1)
- Linux
- Oracle Database Admin Workshop 2 (gọi tắt là Admin 2)
- Thi chứng chỉ OCP (OCA + Admin 2)
- Oracle Database 12c, 19c New Features
- Oracle GoldenGate
- Oracle DataGuard
- Oracle Performance Tunning
- Oracle RAC
- Thi chứng chỉ OCE Tunning hoặc RAC
- Oracle Security
- Các hệ điều hành khác: Solaris, AIX

Và 1 điều quan trọng là hãy thực hành, làm thật nhiều vào nhé các em.

3. Công việc của DBA là gì ạ?

Trả lời:

1. Giám sát, vận hành, quản trị các CSDL của các hệ thống được giao:
- Cài đặt phần mềm CSDL, tạo CSDL, chuyển dữ liệu sang hệ thống mới phục vụ kiểm thử hoặc tối ưu kiến trúc hệ thống.
- Thực hiện nâng cấp cơ sở dữ liệu và phần mềm lên các cấp phát hành mới CSDL
- Bật và tắt instance cơ sở dữ liệu khi có yêu cầu cập nhật phần cứng máy chủ, định kỳ khởi động lại CSDL để giải phóng cache hoặc đảm bảo an toàn CSDL.
- Quản lý cấu trúc lưu trữ của CSDL: Quy hoạch lưu trữ dữ liệu của các user, cấp phát dung lượng tablespace, dọn dẹp các dữ liệu không cần thiết.
- Quản lý các đối tượng CSDL như: bảng, index, view, procedure, package, dblink…
- Sao lưu cơ sở dữ liệu (backup) và thực hiện các hoạt động khôi phục khi cần thiết (recovery), định kỳ kiểm thử bản chất lượng bản backup để đảm bảo an toàn cho dữ liệu.
- Giám sát tải CSDL: các session truy cập, các session bất thường, đặt ngưỡng an toàn cho CSDL; có  biện pháp phòng ngừa hoặc khắc phục theo yêu cầu đảm bảo hệ thống hoạt động online 24/7 với hiệu năng cao. Xây dựng thủ tục giám sát, báo cáo CSDL tự động nhằm phát hiện sớm bất thường đem lại an toàn cho HT.
- Tối ưu CSDL: tối ưu tham số; rà soát phát hiện và tối ưu câu lệnh, thủ tục chiếm tải cao hoặc theo yêu cầu của người dùng ứng dụng.
- Nghiên cứu các giải pháp giám sát tập trung giảm công sức giám sát thủ công, hướng tới tự động hóa.
- Khắc phục sự cố liên quan đến CSDL.
- Hỗ trợ yêu cầu từ ứng dụng liên quan đến database kịp thời (cấp/thu hồi quyền; tạo/thay đổi cấu trúc bảng, thủ tục và các object liên quan, kill tiến trình; tối ưu câu lệnh theo yêu cầu từ ứng dụng;…).
2. Chuyển dữ liệu lịch sử của các CSDL lớn lên SAN tốc độ thấp hoặc Tape.

3. Giám sát, vận hành, quản trị các tiến trình đồng bộ Golden Gate, DataGuard, Mview, CDC,…

4. Quản lý người dùng và bảo mật:
○ Tạo user truy cập vào cơ sở dữ liệu theo phê duyệt đảm bảo đúng quy trinh, quy định; Phân quyền đúng, đủ, kịp thời.
○ Đặt Firewall trên database để chặn IP theo user.
○ Che dấu dữ liệu “nhạy cảm” (thông tin khách hàng, thẻ tín dụng, tài khoản, thanh toán, công nợ,....), ghi log người dùng truy cập các dữ liệu này.
○ Audit tác động của người dùng (bằng Imperva, FGA,…)

.... (3 dấu chấm vậy thôi nhưng là rất nhiều việc đấy nhé)

4. Em muốn tự thực hành thì làm như thế nào ạ?

Trả lời: 

Em cài vmware hoặc virtual box xong lấy lab của thầy dựng sẵn về sử dụng hoặc tự cài:

5. Biến môi trường là gì ạ?

Trả lời: 

Khi mình gõ sqlplus không ra gì toàn báo command not found hay các lệnh khác cũng thế

Nguyên nhân do mình chưa setup biến môi trường

Giải pháp: Tạo biến môi trường trong file .bash_profile (với linux) và file .profile (với aix hoặc Solaris)
(từ root)# su  - oracle

(hoặc từ đường dẫn khác muốn về home thì gõ cd ~)

(đã sang oracle)$ vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=dbaviet
export ORACLE_UNQNAME=dbaviet
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export ORA_INVENTORY=/u01/app/oraInventory
export ORACLE_SID=dbaviet
export PDB_NAME=dbavietpdb
export DATA_DIR=/oradata
export PATH=/usr/sbin:/usr/local/bin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

- Cập nhật biến môi trường:
$ . .bash_profile (dấu chấm nhé)
hoặc
$ source .bash_profile

- Kiểm tra lại biến môi trường:
$ env |grep ORA

(yêu cầu phải có các biến ORACLE_SID, ORACLE_BASE, ORACLE_HOME,...)

(PATH=$ORACLE_HOME/bin để có lệnh sqlplus, dbca, lsnrctl,... hay các lệnh khác)

6. Thầy cho em xin biến môi trường của user oracle, grid mẫu?

Trả lời:
- Biến môi trường user oracle (thay đổi ORACLE_SID=dbn02, dbn03 là tên instance của các bạn):

[root@dbn01~]# su - oracle
[oracle@dbn01 ~]# vi .bash_profile
export PATH
export TMPDIR=$TMP
export ORACLE_HOSTNAME=dbn01
export ORACLE_UNQNAME=db0
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db
export ORACLE_SID=dbn01
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

- Biến môi trường user grid (thay đổi ORACLE_SID=+ASM2, +ASM3 tùy vào node của bạn):

[root@dbn01~]# su - grid
[grid@dbn01 ~]# vi .bash_profile
export PATH
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=dbn01
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid
export ORACLE_SID=+ASM1
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

- Biến môi trường user root khi thao tác stop, start grid:

[root@dbn01 ~]# vi .bash_profile
export GRID_HOME=/u01/app/11.2.0/grid
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db
export PATH=$GRID_HOME/bin:$GRID_HOME/OPatch:/sbin:/bin:/usr/sbin:/usr/bin

7. Em mới sử dụng Oracle Database 12c, 1 số lệnh hơi khác làm em lúng túng, thầy giúp em với ạ?

Trả lời:

Em tham khảo link này để học những lệnh cơ bản nhất: https://www.tranvanbinh.vn/2020/06/co-ban-ve-oracle-database-12c.html


8. 1 máy chủ chạy 2 database, làm sao để em chuyển qua lại được giữa các database này ạ?

Trả lời: 

Em chỉ cần đặt  biến môi trường cho ORACLE_SID là được (nếu ORACLE_HOME không đổi, còn nếu ORACLE_HOME thay đổi thì em export cả ORACLE_HOME)

-- Thao tác với dbaviet1
(oracle)$ export ORACLE_SID=dbaviet1
$ sqlplus / as sysdba
SQL> select INSTANCE_NUMBER, INSTANCE_NAME, status from gv$instance;
SQL> select inst_id,name, open_mode from gv$database;

-- Giờ muốn chuyển sang dbaviet2
(oracle)$ export ORACLE_SID=dbaviet2
$ sqlplus / as sysdba
SQL> select INSTANCE_NUMBER, INSTANCE_NAME, status from gv$instance;
SQL> select inst_id,name, open_mode from gv$database;

9. Bảng to, bảng vừa và bảng lớn thì bao nhiêu row ạ?

Trả lời:

- Bảng nhỏ: <= 5 triệu row
 
- Bảng vừa: 5 triệu - 50 triệu row
 
- Bảng lớn: 50 triệu row - 100 triệu row

- Bảng rất lớn: 100 triệu row - 500 triệu row

- Bảng KHỦNG: 500 triệu row - 1,2 tỷ row

- Bảng cực KHỦNG: >= 2 tỷ row

10. SID, Service_Name là gì ạ?
Trả lời:

SID là tên duy nhất của Instance

Service_Name là alias được sử dụng khi client kết nối:

+ Với Single thì khai báo trong biến SERVICE_NAMES = sales.acme.com, widgetsales.acme.com --> Khi đó có 2 service_name khi kết nối

+ Với RAC không sử dụng biến SERVICE_NAMES mà dùng DBCA hoặc SRVCTL để quản lý, khi đó  với SIDs Sales1, Sales2, chúng ta chỉ có cần 1 service_name Sales là client sẽ kết nối lần lượt vào 1 trong 2 SIDs đó.


(..... đang cập nhật.....)

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty

Bật FTP Server trên Solaris 10

Mục đích: Các bước để bật (enable) FTP server trên Solaris 10.

Sửa file /etc/ftpd/ftpusers  và comment dòng “root” hoặc bỏ dòng đó ra để root được ftp phục vụ mục đích test. 

Thứ Sáu, 23 tháng 9, 2022

[VIP5] 1 câu lệnh kém chiếm 1.5TB (99%) temp nghẽn Database Core

Mục đích: Chia sẻ case 1 câu lệnh kém chiếm 1.5TB (99%) temp nghẽn Database Core (DB có 7K session) làm treo toàn bộ Database Core, gián đoạn toàn bộ nghiệp vụ

Gather dictionary statistics và fixed-objects statistics

Mục đích: Định kỳ hàng tháng, hoặc 3-6-12 tháng nên bảo trì dictionary để DB chạy mượt hơn.

Thứ Năm, 22 tháng 9, 2022

Oracle là gì? Tìm hiểu hệ quản trị cơ sở dữ liệu Oracle từ A-Z

Oracle là gì? Đây là câu hỏi được rất nhiều người quan tâm khi tìm hiểu về các hệ thống quản trị cơ sở dữ liệu. Oracle là một trong những nhà cung cấp database lớn nhất trên thị trường hiện nay. Để hiểu rõ hơn về Oracle Database, hãy cùng tìm hiểu chi tiết từ A – Z về hệ quản trị này trong bài viết dưới đây.

Oracle là gì? Tìm hiểu về hệ quản trị cơ sở dữ liệu Oracle

Oracle là gì? Đó là câu hỏi nhiều người cần tìm hiểu về phần mềm này. Hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) có tên chính thức là Oracle Database, là phần mềm hệ quản trị cơ sở dữ liệu được sử dụng trên toàn thế giới. Để hiểu rõ hơn về Oracle là gì, mời bạn cùng tham khảo một số thông tin chi tiết sau đây nhé.

Thứ Tư, 21 tháng 9, 2022

Top 11 phần mềm quản lý cơ sở dữ liệu phổ biến nhất hiện nay

Tất cả dữ liệu mà chúng ta sử dụng hằng ngày đều nằm trong các phần mềm quản lý cơ sở dữ liệu. Trong bài viết dưới đây, mình xin giới thiệu đến bạn top 11 phần mềm quản lý cơ sở dữ liệu phổ biến nhất hiện nay

Sử dụng công cụ SQL Tunning Advisor để tối ưu câu lệnh SQL

Mục đích: Chạy tự động tạo tuning task cho 1 tập câu lệnh (SQL Tuning Set (STS)) hoặc 1 câu lệnh SQL

Invisible Index trong Oracle Database

Invisible index được giới thiệu từ oracle 11g. Như tên gọi bc ủa nó, index này sẽ bị bỏ qua bởi optimizer khi phân tích plan câu lệnh, nó được coi như không tồn tại. 

Thứ Ba, 20 tháng 9, 2022

Restart tiến trình MMON Process trong Oracle Database

Background process MMON( Manageability Monitor)  thực hiện nhiệm vụ chụp (snapshot) AWR và phân tích ADDM tự động định kỳ 60 phút 1 lần.

Nhưng khi tiến trình MMON bị crashes hoặc suspended (treo) ta phải làm gì?

Các lệnh OPATCH hay dùng trong Oracle Database

1. Liệt kê chi tiết inventory của patch.

Nhân bản Oracle Home từ Database Server sang Database Server khác

 Mục đích: Nhân bản ORACLE_HOME Database Server sang Database Server khác để đỡ mất công cài lại Oracle Software.

Thứ Ba, 13 tháng 9, 2022

HƯỚNG DẪN GIÁM SÁT, VẬN HÀNH MYSQL/MARIADB

 Hầu hết chúng ta đều quen quản lý cơ sở dữ liệu MySQL/MariaDB thông qua công cụ phpMyAdmin. Thực tế công cụ phpMyAdmin quá phổ biến giúp người dùng có thể quản lý cơ sở dữ liệu một cách nhanh chóng, hiện quả thông qua giao diện trực quan. Nên dùng phpMyAdmin để quản trị cho dễ dàng, ngoài ra có thể dùng dòng lệnh

HƯỚNG DẪN GIÁM SÁT, VẬN HÀNH POSTGRESQL

HƯỚNG DẪN CẤU HÌNH, GIÁM SÁT ORACLE GOLDENGATE

 8.1. GIÁM SÁT ORACLE GOLDENGATE

1.CHECK

--Log: /u01/app/oracle/goldengate/ggserr.log

1. Check all processes

GGSCI (db1) 8> info all

GGSCI (db1) 8> status all

HƯỚNG DẪN GIÁM SÁT, VẬN HÀNH DATAGUARD

7.1. HƯỚNG DẪN GIÁM SÁT, BẬT, TẮT DATAGUARD

Giám sát

Sử dụng Oracle Broker kiểm tra trạng thái cấu hình DataGuard:

dgmgrl /

show configuration;

show database verbose dbaviet

HƯỚNG DẪN KHẮC PHỤC MỘT SỐ LỖI CƠ BẢN HAY GẶP

[VIP5] THỦ TỤC BẢO TRÌ HỆ THỐNG ĐỊNH KỲ ORACLE DATABASE

5.1. Kiểm tra dung lượng các vùng đĩa local

Lệnh thực hiện

User thực hiện

OS use oracle

Lệnh thực hiện

df -h

Kết quả mong đợi

Dung lượng các phân vùng đĩa trên máy chủ thể hiện trong mục:

 Kiểm tra dung lượng các vùng đĩa

Filesystem         Size   Used  Available Capacity  Mounted on

Yêu cầu: Cột Capacity của các phân vùng đĩa phải nhỏ hơn 90%

[VIP5] CÁC THAO TÁC VẬN HÀNH HỆ THỐNG ORACLE DATABASE

4.1. Startup/Shutdown

4.1.1. Startup/Shutdown Clusterware Oracle RAC

Hệ thống Clusterware sẽ được khởi động cùng với quá trình hệ điều hành khởi động, tuy nhiên có nhiều trường hợp người quản trị sẽ phải khởi động Clusterware bằng tay. Khi đó thực hiện như sau:

Login vào máy chủ database với user “root” trên từng node cần startup Clusterware, chạy lệnh sau:

[VIP5] HƯỚNG DẪN KIỂM TRA ĐỊNH KỲ HOẠT ĐỘNG CỦA CSDL

HƯỚNG DẪN  KIỂM TRA ĐỊNH KỲ HOẠT ĐỘNG CỦA CSDL


3.1. Kiểm tra log Database

Login vào máy chủ database với user “oracle” thực hiện các lệnh theo cú pháp sau và thay các biến phù hợp:

$cat       /<DB name>/<Instance name>/trace/alert_<Instance name>.log |"Failed\|ORA-\|Ora-\|TNS-\|Error\|error\|Fatal\|fatal"

Ví dụ:

$cat $ORACLE_BASE/diag/rdbms/CRM/CRM1/trace/alert_ CRM1.log |grep "Failed\|ORA-\|Ora-\|TNS-\|Error\|error\|Fatal\|fatal"

--> Với kết quả trả về, dùng Google hoặc Metalink để xử lý các lỗi.

[VIP5] CHECKLIST HƯỚNG DẪN KIỂM TRA TIẾP NHẬN ORACLE DATABASE

CHECKLIST HƯỚNG DẪN KIỂM TRA TIẾP NHẬN ORACLE DATABASE

 

2.1. Hướng dẫn kiểm tra tiếp nhận DB

-         Một số nội dung công việc cần thực hiện và kiểm tra lại trước khi tiếp nhận hoặc đưa DB mới vào môi trường hoạt động:

STT

Nội dung

Yêu cầu phải đạt được trước khi tiếp nhận

1

Kiểm tra kiến trúc dự phòng DB

DB chạy cơ chế active – active theo công nghệ Oracle Real application Cluster (RAC), ứng dụng kết nối đảm bảo khả năng load balance và failover trên DB; xem xét cài đặt DataGuard sau khi tiếp nhận.

Với những DB single bắt buộc phải cài đặt dự phòng  DataGuard/GoldenGate.

2

Kiểm tra cấu hình DB

Redo khai báo phù hợp: có ít nhất 3 redo log group mỗi instance DB, mỗi group có ít nhất 2 member trên 2 vùng khác nhau, đảm bảo mirror dự phòng cho nhau.

DB chạy ở chế độ archive log mode, archive log nên sinh ra nằm trên 2 vùng đĩa riêng biệt.

UNDO, TEMP, tablespace ứng dụng có các datafile nằm trên ít nhất 2 mount point khác nhau (nếu dạng file system)

SGA khai báo phù hợp: dung lượng SGA + PGA tương đương 80% dung lượng RAM (trong đó SGA từ 50-80% dung lượng đó, PGA 20-50% tuỳ nghiệp vụ OLTP hay Data Warehouse)

DB_FILES khai báo từ 1000 – 5000.

Đặt tham số resource_limit = true để các chính sách user profile đặt trong DB có hiệu lực.

Đặt các tham số sessions, proceses (500-3000) phù hợp với yêu cầu nghiệp vụ của từng DB.

DB chạy chế độ Dedacated server, nếu tài nguyên hữu hạn có thể đặt chế độ shared (shared_server từ 50 – 400), các ứng dụng kết nối vào cũng đang chạy theo chế độ shared.

Cấu hình RMAN giữ ít nhất 2 bản full và đảm bảo các điều kiện sau:

-  Auto backup control file

-  MAXPIECESIZE tối đa 5-40GB

-  Nên đặt db_block_checking

Đối với DB sử dụng ASM:

-            Có ít nhất 3 disk group khác nhau (CRS, DATA, FRA)

-            Mỗi disk group có ít nhất 4 LUN cùng size dạng external, nếu quan trọng nên dùng normal (CRS là bắt buộc phải dùng kiểu normal tối thiểu 3 disk)

3

Kiểm tra DB Objects

-            Các object đặt option noparallel.

-            Các datafile có thể đặt auto extend nếu đủ dung lượng và kiểm soát được, còn không thì không đặt auto extend.

-            Drop các user không sử dụng, revoke quyền DBA của các user.

-            Kiểm tra profile chứa user ứng dụng đảm bảo profile này đặt unlimited cho mọi tham số.

-            Bảng dữ liệu ứng dụng không nằm trên user tablespace.

-            Không xuất hiện corrupt block trong DB.

-            Tất cả các object ở trạng thái valid (các object bị invalid thì phải drop).

-            Tất cả index không ở trạng thái unusable.

-            Định dạng tên partition đối với các bảng đánh partition theo thời gian là DATAyyyy, DATAyyyymm hay DATAyyyymmdd tuỳ theo loại partition (partition theo năm, tháng hoặc ngày tương ứng) hoặc DATA_TENNGHIEPVUyyyy hay DATA_TENNGHIEPVUyyyymm hay DATA_TENNGHIEPVUyyyymm; index là cặp đối xứng với DATA ví dụ INDXyyyy, INDX_TENNGHIEPVUyyyy

2.2. Nội dung cần thực hiện ngay sau khi tiếp nhận :

STT

Nội dung

Các công việc cần thực hiện ngay sau khi tiếp nhận

1

Kiểm tra kiến trúc dự phòng DB

Với DB RAC xem xét cài đặt DataGuard

Với những DB single phải cài đặt dự phòng  DataGuard/GoldenGate sớm.

2

Kiểm tra và cấu hình cảnh báo cho DB

Cấu hình cảnh báo DB như các DB khác đang chạy:

-            Check, đặt cảnh báo Tablespace

-            Check, đặt cảnh báo ASM disk group

-            Check, đặt cảnh báo disk u01, /

-            Check và đặt cảnh báo performance

-            Check và đặt cảnh báo alert log

-            Check và cấu hình Analyze bảng và index

-            Check, đặt trigger Firewall DB

-            Check, đặt cảnh báo tác động DDL

-            Check, đặt cảnh báo tác động DML (FGA)

-            Check, đặt cảnh báo Listener, instance, log backup

2

Kiểm tra cơ chế backup DB

-            Giữ ít nhất 2 bản backup full có cảnh báo.

-            Đẩy sớm lên backup tập trung dự phòng (đối với các DB chạy trên local disk).

3

Kiểm tra và drop các bảng không sử dụng

-            Drop tất cả các bảng ứng dụng không sử dụng.

-            Drop tất cả các bảng rác do user cá nhân tạo ra.

-            Tạo thêm tablesapce NGHIEPVU.

4

Kiểm tra profile cho user DB

User cá nhân và user ứng dụng đặt trên 2 profile có policy khác nhau (user cá nhân đặt giới hạn 3 session, expire password 45 ngày).

5

Kiểm tra tính năng audit DB

Nếu ở chế độ audit, các bảng log audit cần phải đặt trên tablespace riêng không thuộc system tablespace.  audit_trail=none, dùng FGA để audit select, DML bảng.

6

Kiểm tra chính sách quay vòng dữ liệu

Xác định chính sách vòng đời của các bảng dữ liệu theo quy định.

2.3.  Hướng dẫn thiết lập tham số Oracle DB

Sau đây là một số yêu cầu và hướng dẫn thiết lập các thành phần cho một Oracle DB:

STT

Nội dung

Yêu cầu

Cách kiểm tra/thiết lập

1

Thiết lập vùng swap cho máy chủ DB

-            Với máy chủ có RAM 2-16GB: đặt dung lượng swap bằng với dung lượng RAM.

-            Với máy chủ có RAM>16GB: đặt dung lượng swap là 16GB hoặc 75%-80% dung lượng RAM.

Tuỳ vào từng loại hệ điều hành, dùng lệnh của hệ điều hành để kiểm tra RAM, swap:

-            Linux: swapon –s

-            Solaris: swap -s

2

Thiết lập cấu hình cho DB

Redo khai báo ít nhất 3 redo log group cho mỗi instance DB, mỗi group gồm ít nhất 2 member nằm trên 2 vùng khác nhau, đảm bảo mirror cho nhau.

-            Kiểm tra:

SELECT thread#, group#, members

FROM v$log

ORDER BY thread#, group#;

-            Thiết lập:

alter database add logfile group n ('/.../redon_a.log','/.../redon_b.log') size ...M;

DB chạy ở chế độ archive log mode.

-            Kiểm tra:

archive log list;

-            Thiết lập:

startup mount;

alter database archivelog;

UNDO, TEMP, tablespace ứng dụng có các datafile nằm dàn trải trên ít nhất 2 mount point khác nhau.

-            Kiểm tra:

SELECT file_name  FROM dba_data_files

WHERE tablespace_name LIKE 'UNDO%';

SELECT file_name  FROM dba_temp_files;

-            Thiết lập:

alter tablespace UNDOTBS add datafile '/.../undon.dbf' size ...M;

alter tablespace TEMP add tempfile '/.../temp0n.dbf' size ...M;

SGA khai báo phù hợp, dung lượng SGA + PGA tương đương  80% dung lượng RAM vật lý:

-            Đối với Oracle 11g/12c/19c, sử dụng các tham số sga_max_size và sga_target như Oracle 10g.

-            Tham số pga_aggregate_target đặt tương đương 10-20% tổng SGA+PGA nói trên.

(Có thể sử dụng tự động memory)

-            Kiểm tra:

sqlplus "/as sysdba"

show parameter sga_;

show parameter pga_;

show parameter memory;

-            Đảm bảo các tham số memory_max_target=0 và memory_target=0.

-            Thiết lập:

alter system set <param>=...G scope=spfile sid='*';

DB_FILES khai báo từ 1000 – 3000.

-            Kiểm tra:

sqlplus "/as sysdba"

show parameter db_files;

-            Thiết lập:

alter system set db_files=2000 scope=spfile sid='*';

Đặt tham số resource_limit = true để các chính sách user profile đặt trong DB có hiệu lực.

-            Kiểm tra:

sqlplus "/as sysdba"

show parameter resource_limit ;

-            Thiết lập:

alter system set resource_limit=true scope=spfile sid='*';

Đặt các tham số sessions, processes (500-3000) phù hợp với yêu cầu nghiệp vụ của từng DB.

-            Kiểm tra:

sqlplus "/as sysdba"

show parameter session;

-            Thiết lập:

alter system set sessions=<n> scope=spfile sid='*';

Nếu DB chạy chế độ shared (shared_server từ 50 – 400), các ứng dụng kết nối vào chạy theo chế độ shared.

-            Kiểm tra:

sqlplus "/as sysdba"

show parameter shared_server;

-            Thiết lập:

alter system set shared_server=<n> scope=spfile sid='*';

Đối với DB sử dụng ASM:

-            Có 3 disk group khác nhau CRS, DATA (chưa data, redo),FRA (chứa archived log,  reodo thứ 2, control file thứ 2, backup)

-            Mỗi disk group có ít nhất 4 LUN

-            Kiểm tra:

sqlplus "/as sysdba"

select name from v$asm_diskgroup;

-            Thiết lập: tạo thêm các diskgroup nếu chưa thoả mãn yêu cầu.

CREATE DISKGROUP <name> external redundancy DISK '<device_name>';

 

2.4.  Hướng dẫn thiết lập tham số hugepages cho Oracle DB trên Linux

Note: Trước tiên cần Disabling Transparent HugePages theo khuyến nghị của Oracle sau đó mới thực hiện cấu hình

Mục đích: Với Oracle Database chạy Linux Server từ 16GB SGA (mà chỉ cần >=8GB) thì nên sử dụng HugePages. Khi đó Oracle sẽ hoạt động hiệu quả hơn. Khi chúng ta cấu hình HugePage, Linux Kernel sẽ dùng page hớn (gọi là huge page). Thay vì 4K với Linux x86 và x86_64 hay 16 KB với IA64 chúng ta sẽ đặt  4 MB on x86, 2MB với x86_64 hay 256MB trên IA64. Page lớn hơn tức là hệ thống sẽ cần ít bảng quản lý page (page table) hơn, do đó việc ánh xạ giữa page table và block cần truy xuất.

Tuy nhiên giới hạn của Oracle là tính năng AMM (Automatic Memory Management) không hỗ trợ HugePages. Do đó AMM disable (memory_max_size = 0, memory_target=0) và thay bằng ASMM (Automatic Shared Memory Management), tức là cấu hình SGA_MAX_SIZE, SGA_TARGET.

Bước 1: Thiết lập tham số memlock trong file /etc/security/limits.conf để giới hạn khả năng sử dụng RAM của user, ví dụ hệ thống có 64GB RAM thì thiết lập tối đa 90% của RAM tính theo KB.

# vi /etc/security/limits.conf

*   soft   memlock 60397977

*   hard   memlock    60397977

Kiểm tra lại :

(oracle)$ ulimit -l

Bước 2:Disable AMM

 Với Oracle Database từ 11g trở đi thì disable AMM bằng các  tham số MEMORY_TARGET và MEMORY_MAX_TARGET (nếu có).

ALTER SYSTEM SET MEMORY_TARGET = 0 SCOPE=SPFILE;

ALTER SYSTEM SET MEMORY_MAX_TARGET = 0 SCOPE=SPFILE;


Bước 3: Thiết lập lại giá trị SGA cho Oracle DB (memory 90% tức là 57.6GB, SGA 80% tức 46GB còn lại 11.6GB cho PGA).

ALTER SYSTEM SET SGA_TARGET = 46G ;

ALTER SYSTEM SET SGA_MAX_SIZE = 46G ;

Bước 4: Restart DB.

Nếu không thay đổi tham số SGA_MAX_SIZE thì không cần phải làm bước này.

Bước 5: Tính toán và thiết lập giá trị hugepages.

Tính bằng tay:

- Kiểm tra Hugepagesize

grep Hugepagesize /proc/meminfo

Hugepagesize:       2048 kB

- Tính vm.nr_hugepages = SGA/Hugepagesize = 46*1024*1024/2048=23552

Hoặc Chạy script hugepages_settings.sh (từ My Oracle Support (MOS) note 401749.1).) để tính toán ra giá trị hugepages cần thiết lập. Giả sử giá trị cần đặt ở đây là 22960.

#!/bin/bash

#

# hugepages_settings.sh

#

# Linux bash script to compute values for the

# recommended HugePages/HugeTLB configuration

#

# Note: This script does calculation for all shared memory

# segments available when the script is run, no matter it

# is an Oracle RDBMS shared memory segment or not.

# Check for the kernel version

KERN=`uname -r | awk -F. '{ printf("%d.%d\n",$1,$2); }'`

# Find out the HugePage size

HPG_SZ=`grep Hugepagesize /proc/meminfo | awk {'print $2'}`

# Start from 1 pages to be on the safe side and guarantee 1 free HugePage

NUM_PG=1

# Cumulative number of pages required to handle the running shared memory segments

for SEG_BYTES in `ipcs -m | awk {'print $5'} | grep "[0-9][0-9]*"`

do

   MIN_PG=`echo "$SEG_BYTES/($HPG_SZ*1024)" | bc -q`

   if [ $MIN_PG -gt 0 ]; then

      NUM_PG=`echo "$NUM_PG+$MIN_PG+1" | bc -q`

   fi

done

# Finish with results

case $KERN in

   '2.4') HUGETLB_POOL=`echo "$NUM_PG*$HPG_SZ/1024" | bc -q`;

          echo "Recommended setting: vm.hugetlb_pool = $HUGETLB_POOL" ;;

   '2.6') echo "Recommended setting: vm.nr_hugepages = $NUM_PG" ;;

*) echo "Unrecognized kernel version $KERN. Exiting." ;;

esac

# End 

$ chmod u+x ./hugepages_setting.sh 

$ ./hugepages_settings.sh

.

.

.

Recommended setting: vm.nr_hugepages = 23552

 

Bước 6: Từ root, Sửa file /etc/sysctl.conf và thiết lập tham số vm.nr_hugepages theo giá trị tính toán ở trên:

vm.nr_hugepages = 23552

Bước 7:  Shutdown tất cả các DB instance và reboot server hoặc không cần reboot thì thực hiện # sysctl -p

Bước 8: Kiểm tra lại cấu hình.

Sau khi server và DB lên, kiểm tra lại cấu hình xem có chuẩn không.

# grep HugePages /proc/meminfo

HugePages_Total:    23552

HugePages_Surp:        0

# grep ^Huge /proc/meminfo

HugePages_Total:   23552

HugePages_Free: 10552

HugePages_Rsvd: 2016

HugePages_Surp:    0

Hugepagesize:   2048 kB

2.6.  Hướng dẫn tối ưu hóa cấu trúc CSDL Oracle

v Cấu trúc bảng:

Khi tạo bảng mới cần áp dụng các phương án như sau:

-         Với bảng có dữ liệu lớn (2G trở lên) phải đánh partition.

+       Với dữ liệu lịch sử thì đánh theo By Range.

+       Với dữ liệu xác định trước được giá trị thì đánh theo By list.

+       Với dữ liệu không có quy luật thì đánh theo By Hash.

-         Với các bảng có đánh partition thì index phải đánh theo Local.

-         Hạn chế sử dụng trigger trên bảng.

-         Đánh giá trong câu lệnh select có trường nào xác định được đối tượng tìm kiếm chính xác nhất và có độ dài trường ngắn nhất (ưu tiên trường number) thì đánh index theo trường đó.

-         Hạn chế dùng foreign key.

-         Với các bảng có tần suất update hoặc insert lớn không nên dùng primary key/unique key

v Câu lệnh tác động:

Khi viết câu lệnh tác động vào bảng cần làm theo hướng dẫn sau:

-         Tất cả các câu lệnh đều phải có index, không câu lệnh nào được quét full bảng.

-         Nếu bảng có partition thì trong câu lệnh phải có thêm trường partition (ngoại trừ một số trường hợp đặc biệt).

-         Khi join hai bảng với nhau thì bảng có dữ liệu lớn hơn phải có index.

-         Trong câu lệnh không dùng điều kiện is null, cần chuyển sang phương án dùng các toán tử : >, <, =.

-         Hạn chế sử dụng câu lệnh delete, cần chuyển sang câu lệnh truncate hoặc tạo bảng mới.

-         Hạn chế sử dụng câu lệnh update, cần chuyển sang câu lệnh insert và select.

-         Với các bảng tmp có dữ liệu trong quá trình chạy và xóa dữ liệu sau khi chạy (không cần backup dữ liệu), cần chuyển bảng sang nologging và câu lệnh insert cần có thêm append, tablespace DUMP.

v Câu lệnh tạo view:

Các lưu ý khi tạo view:

-         Trong view không nên thêm trường mới vì khi câu lệnh select vào view có thể sẽ bị quét full bảng.

-         Hạn chế sử dụng view lồng nhau.

v Tạo tablespace:

Với mỗi DB thường, tạo các loại tablespace như sau:

-         Loại tablespace cố định: để lưu default các user ứng dụng, các bảng không có partition, ví dụ: DATA, index tương ứng INDX

-         Loại tablespace không cố định: lưu các bảng có partition, ví dụ DATAyyymmdd, DATAyyyymm, DATAyyyy, index tương ứng INDXyyyymmdd, INDXyyyymm, INDXyyyy

-         Loại tablespace cho người dùng: lưu các bảng của người dùng CSDL trực tiếp tạo ra, ví dụ: DATA_NGHIEPVU, INDX_NGHIEPVU

-         Loại tablespace tmp: lưu các bảng tmp, các bảng không cần backup, ví dụ: DUMP.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master