Wednesday, January 8, 2025

.::: Create Table & Insert data using suport Arab & Thailand Character in PostgreSQL EDB :::.

 

Berikut adalah contoh tabel PostgreSQL dan skrip untuk menyisipkan data yang mendukung tulisan Arab, Thailand, Rusia, dan Jepang.

PostgreSQL mendukung berbagai jenis karakter (multilingual) melalui penggunaan encoding UTF-8. Pastikan database Anda menggunakan encoding UTF-8.

Langkah 1: Buat Database dengan Encoding UTF-8
Pastikan database sudah menggunakan UTF-8. Anda dapat memeriksa atau membuatnya dengan:

CREATE DATABASE multilingual_db
WITH ENCODING 'UTF8'
LC_COLLATE='en_US.UTF-8'
LC_CTYPE='en_US.UTF-8'
TEMPLATE template0;

.::: Create Table & Insert data using suport Arab & Thailand Character in MSSQL :::.

 
Untuk membuat tabel di SQL Server yang mendukung tulisan Arab, Thailand, Rusia, dan Jepang, kita perlu menggunakan tipe data NVARCHAR untuk kolom teks. Berikut adalah contoh implementasinya:

1. Membuat Tabel

CREATE TABLE MultibahasaTabel (
    ID INT IDENTITY(1,1) PRIMARY KEY,      -- Kolom ID sebagai Primary Key
    Nama NVARCHAR(100),                   -- Kolom Nama untuk teks multibahasa
    Deskripsi NVARCHAR(255)               -- Kolom Deskripsi untuk teks panjang
);
 

.::: Create Table & Insert data using suport Arab & Thailand Character in MariaDB MySQL :::.


Untuk membuat tabel di MariaDB yang mendukung tulisan Arab dan Thailand, Anda perlu memastikan bahwa kolom teks menggunakan charset dan collation yang mendukung karakter multibahasa, seperti utf8mb4. Charset utf8mb4 mendukung seluruh karakter Unicode, termasuk karakter Arab dan Thailand.

Berikut adalah contoh tabel dan data insert-nya:

Langkah 1: Membuat Database dengan Charset utf8mb4
Pastikan database menggunakan charset yang mendukung tulisan Arab dan Thailand.

CREATE DATABASE multidb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE multidb;
 
CREATE DATABASE multilingual_db
CHARACTER SET latin1
COLLATE latin1_swedish_ci;
USE multilingual_db;


Langkah 2: Membuat Tabel
Tabel ini akan mendukung karakter multibahasa pada kolom arabic_text dan thai_text.

CREATE TABLE multilingual_table (
    id INT AUTO_INCREMENT PRIMARY KEY,
    arabic_text TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci,
    thai_text TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci,
    description VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
);

Tuesday, January 7, 2025

.::: All Index MariaDB MySQL, Check Index, Size Index, Type Index ALL, ref, eq_ref,PRIMARY, DERIVED, UNION :::.

 
Dari tabel yang Anda lampirkan, berikut adalah penjelasan masing-masing kolom dalam EXPLAIN query MariaDBMySQL

select_type Menunjukkan tipe query, seperti PRIMARY, DERIVED, UNION, dll.
table Nama tabel atau hasil intermediate (seperti derived tables atau union).
type Menunjukkan tipe join atau akses data (ALL, ref, eq_ref, dll).

Berikut contoh query sesuai dengan nilai di kolom select_type dan type

1. PRIMARY + ALL
Query utama yang melakukan full table scan.

SELECT * FROM barang;

explain SELECT * FROM barang;

 

Friday, January 3, 2025

.::: Script Daily Backup Database Oracle using expdp :::.

 
1. create dba directory


https://teguhth.blogspot.com/2024/12/how-to-backup-and-restore-table.html

su - oracle
mkdir -p /home/oracle/backup
mkdir -p  /u01/backup/daily

CREATE OR REPLACE DIRECTORY DATA_PUMP_DIR AS '/home/oracle/backup';
GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO aisyah;

CREATE OR REPLACE DIRECTORY DATA_PUMP_DIR AS '/home/oracle/backup';
GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO ADMIN;

CREATE OR REPLACE DIRECTORY BACKUP_DAILY AS '/u01/backup/daily';
GRANT READ, WRITE ON DIRECTORY BACKUP_DAILY TO aisyah;
 

Thursday, January 2, 2025

.::: Sample Data Warehouse in SQL Server :::.

Untuk menjadikan query ini sebagai skema data warehouse, tabel-tabel operasional tersebut perlu diubah menjadi tabel fakta dan tabel dimensi.

Skema Data Warehouse
Tabel Dimensi
Dimensi Barang: Mengandung detail tentang barang.
Dimensi Suplier: Mengandung detail tentang suplier.
Dimensi Customer: Mengandung detail tentang customer.
Dimensi Waktu: Mengandung detail waktu untuk analisis.
Tabel Fakta
Fakta Transaksi: Menggabungkan data dari pembelian dan pasok untuk menyimpan fakta transaksi.

correlation https://teguhth.blogspot.com/2019/04/study-kasus-praktis-belajar-query.html

A. Struktur Tabel Dimensi dan Fakta
1. Dimensi Barang


CREATE TABLE dim_barang (
    barang_id INT IDENTITY(1,1) PRIMARY KEY,
    kode_barang CHAR(6) UNIQUE,
    nama_barang VARCHAR(25),
    satuan_barang VARCHAR(20)
);

.::: Sample Data Mart in SQL Server :::.

 
correlation https://teguhth.blogspot.com/2019/04/study-kasus-praktis-belajar-query.html

1. Create table for datamart base on

create table dim_barang(
KODE_BARANG char(6) not null ,
NAMA_BARANG varchar(25),
SATUAN_BARANG varchar(20),
STOK_BARANG decimal(4),
primary key (KODE_BARANG));

create table dim_suplier(
KODE_SUPLIER char(5) not null,
NAMA_SUPLIER varchar(30),
ALAMAT_SUPLIER varchar(30),
KOTA_SUPLIER varchar(15),
TELEPON_SUPLIER varchar(15),
primary key(KODE_SUPLIER));

create table dim_customer(
KODE_CUSTOMER char(6),
NAMA_CUSTOMER varchar(30),
ALAMAT_CUSTOMER varchar(30),
KOTA_CUSTOMER varchar(15),
TELEPON_CUSTOMER varchar(15),
primary key(KODE_CUSTOMER));

Friday, December 27, 2024

.::: Sample Shrink Database SQL Server MSSQL :::.

 
Correlation shrink log http://teguhth.blogspot.com/2023/05/how-to-shrink-log-database-sql-server.html

simulation shrink database

1. Create table & insert 5 million row for lab


CREATE TABLE TestTable (
    ID INT IDENTITY(1,1) PRIMARY KEY,
    Name NVARCHAR(50),
    CreatedDate DATETIME
);

Thursday, December 26, 2024

.::: Configuration RMAN (Recovery Manager), backup & Restore Database Oracle Using RMAN :::.

 
a. Enable Archive log

Tetap di dalam RMAN, atau login ulang jika diperlukan:

http://teguhth.blogspot.com/2024/12/backup-database-restore-database-oracle.html

sqlplus >

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
SELECT dbid,name,controlfile_type,open_mode,created,log_mode,database_role,archivelog_compression,platform_name FROM V$DATABASE

.::: Enable ARCHIVELOG Database Oracle & Test Backup Online & Offline using RMAN :::.

 
Pesan error RMAN-06149: cannot BACKUP DATABASE in NOARCHIVELOG mode menunjukkan bahwa database Anda saat ini berada dalam mode NOARCHIVELOG, sehingga hanya mendukung backup offline (ketika database dalam kondisi MOUNT, tetapi tidak di OPEN). Untuk memperbaiki masalah ini, Anda memiliki dua opsi:

Opsi 1: Aktifkan ARCHIVELOG Mode

Mode ARCHIVELOG memungkinkan Anda melakukan backup database dalam keadaan online (terbuka). Berikut langkah-langkahnya:

a. Login ke RMAN

Tetap di dalam RMAN, atau login ulang jika diperlukan:

rman target /

 

.::: Backup Database & Restore database Oracle Using RMAN :::.

 
A. Backup using RMAN

1. Backup Database + plus archivelog

backup database plus archivelog;

RMAN> backup database plus archivelog;

Starting backup at 24-DEC-24
current log archived
using channel ORA_DISK_1
channel ORA_DISK_1: starting compressed archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=50 RECID=1 STAMP=1188492501
input archived log thread=1 sequence=51 RECID=2 STAMP=1188492563
input archived log thread=1 sequence=52 RECID=3 STAMP=1188492609
input archived log thread=1 sequence=53 RECID=4 STAMP=1188492871
input archived log thread=1 sequence=54 RECID=5 STAMP=1188492941
input archived log thread=1 sequence=55 RECID=6 STAMP=1188493009
input archived log thread=1 sequence=56 RECID=7 STAMP=1188493163
input archived log thread=1 sequence=57 RECID=8 STAMP=1188493230
input archived log thread=1 sequence=58 RECID=9 STAMP=1188551567
input archived log thread=1 sequence=59 RECID=10 STAMP=1188553084
input archived log thread=1 sequence=60 RECID=11 STAMP=1188553084
input archived log thread=1 sequence=61 RECID=12 STAMP=1188553322
input archived log thread=1 sequence=62 RECID=13 STAMP=1188553322
input archived log thread=1 sequence=63 RECID=14 STAMP=1188553452
input archived log thread=1 sequence=64 RECID=15 STAMP=1188553452
input archived log thread=1 sequence=65 RECID=16 STAMP=1188553775
input archived log thread=1 sequence=66 RECID=17 STAMP=1188553775
input archived log thread=1 sequence=67 RECID=18 STAMP=1188555260
channel ORA_DISK_1: starting piece 1 at 24-DEC-24
channel ORA_DISK_1: finished piece 1 at 24-DEC-24
piece handle=/home/oracle/backuprman/163dfqfs_1_1 tag=TAG20241224T101420 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
Finished backup at 24-DEC-24

Monday, December 23, 2024

.::: Drop Schema Database & Drop Tablespace Oracle Database :::.

 
Untuk menghapus schema Oracle dan tablespace terkait, Anda perlu mengikuti langkah-langkah berikut:

1. Drop schema & object
 
DROP USER teguhth CASCADE;

SELECT username, account_status, created,expiry_date, profile,last_login
FROM dba_users where inherited='NO'

Penjelasan:
DROP USER: Menghapus user/schema.
CASCADE: Menghapus semua objek milik user tersebut, seperti tabel, indeks, dan views.

Friday, December 20, 2024

.::: Create tablespace & add new tablespace in schema Oracle 19C :::.

 
Berikut adalah langkah-langkah untuk membuat tablespace bernama teguhthspace dan membuat tabel pada schema teguhth menggunakan tablespace tersebut:

1. Buat Tablespace teguhthspace

CREATE TABLESPACE teguhthspace
DATAFILE '/u01/tgh/teguhthspace_1.dbf'
SIZE 100M
AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;


Penjelasan:

SIZE 100M: Ukuran awal file data adalah 100 MB.
AUTOEXTEND ON NEXT 10M: File akan otomatis bertambah 10 MB setiap kali diperlukan.
MAXSIZE UNLIMITED: Tidak ada batas ukuran maksimum untuk file data.
EXTENT MANAGEMENT LOCAL: Tablespace dikelola secara lokal, yang lebih efisien.
 

Popular Posts