Test ORM using golang
Wish to use ORM but no reference and libraries found.
And There is NO WAY to use Oracle DB in MAC M1. -> Installed it to AWS Ubuntu 20.04.
Posted on my blog : Handling oracle database using golang
- Get Docker image
$ docker pull mariadb
# If you want another verion (10.3)
$ docker pull mariadb:10.3
- Start container
$ docker run --name testdbcontainer -e MYSQL_ROOT_PASSWORD=test -p 3306:3306 -d mariadb
# If you want to run another version (10.3)
$ docker run --name testdbcontainer -e MYSQL_ROOT_PASSWORD=test -p 3306:3306 -d mariadb:10.3
- Execute
$ docker exec -it testdbcontainer mysql -u root -p
# GORM
$ go get -u github.com/jinzhu/gorm
# MySQL driver for GORM
$ go get github.com/go-sql-driver/mysql
> create database bcstatus;
> create user 'user'@'%' identified by 'userpw';
> select host,user from mysql.user;
> grant all privileges on bcstatus.* to 'user'@'localhost';
> rename user 'user'@'localhost' to 'user'@'%';
>
// CREATE TABLE statuses(
// id INT NOT NULL AUTO_INCREMENT,
// tx_id VARCHAR(100) NOT NULL,
// code VARCHAR(40) NOT NULL,
// PRIMARY KEY ( id )
// );
Set global query for tracking queries only generated from mysql.
# Inside MariaDB
# -> docker exec -it testdbcontainer mysql -u root -p
MariaDB [(none)]> SET GLOBAL general_log = 1;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> SELECT @@log_output, @@general_log, @@general_log_file;
+--------------+---------------+--------------------+
| @@log_output | @@general_log | @@general_log_file |
+--------------+---------------+--------------------+
| FILE | 1 | mach-W650EH.log |
+--------------+---------------+--------------------+
1 row in set (0.00 sec)
MariaDB [(none)]>