Skip to main content

Connect MySQL Docker Container using Work Bench | SQL Yog | Docker Host Netwrork

Connect MySQL Docker container using Work Bench | SQL Yog and Other tool:

To connect MySQL Docker container using Workbench OR SQLyog require to run MySQL Docker container with Host Network, and detached (in the background)mode.
Explore more about Docker detached mode - https://severalnines.com/database-blog/mysql-docker-containers-understanding-basics

Following example run MySQL Docker container in detached mode, mounting volume - /mysql/mysql_data_1/data_1 outside contanier, with name - mysql_1, and MySQL server 8.0.18 

#docker run -d --network host \
--volume=/mysql/mysql_2/data_1:/var/lib/mysql \
--name=mysql_1 mysql/mysql-server:8.0.18

But it has limitations:

  • You can have only one host network per machine host, means you can not create more.
  • You can't link other container using --link
  • Port mapping is not supported, means you can access MySQL at port 3306 only
Explore more about Docker Host Network:

Get MySQL root password:
# docker logs mysql_2 2>&1 | grep GENERATED
[Entrypoint] GENERATED ROOT PASSWORD: sIm7IPUmvUSODaKocvALYRiv6@S

Set New password for MySQL user root:
#docker exec -it mysql_1 mysql -uroot -p
mysql> alter user 'root'@'localhost' identified by 'new_password';

Access bash for MySQL Docker container:
#docker exec -it mysql_2 bash

Install text editor vi to change default authentication: 
#yum install vi

Inspect MySQL Docker Container:
You will be able to see HostConfig, NetworkMode, Mounts, PortBindings and other items
#docker inspect mysql_1 | more

Ref.:
https://docs.docker.com/network/network-tutorial-host/

Explore:

Docker Network
7 layers (level) of OSI
Docker v/s Kubernetes
Weave v/s Calico
Weave
VXLAN
What is VXLAN
VXLAN White papers





Comments

  1. Connecting a MySQL Docker container using Workbench or SQL Yog is a game changer for database management! Discover the best practices with AmbitionHost to streamline your workflow.

    ReplyDelete

Post a Comment

Popular posts from this blog

MySQL InnoDB cluster troubleshooting | commands

Cluster Validation: select * from performance_schema.replication_group_members; All members should be online. select instance_name, mysql_server_uuid, addresses from  mysql_innodb_cluster_metadata.instances; All instances should return same value for mysql_server_uuid SELECT @@GTID_EXECUTED; All nodes should return same value Frequently use commands: mysql> SET SQL_LOG_BIN = 0;  mysql> stop group_replication; mysql> set global super_read_only=0; mysql> drop database mysql_innodb_cluster_metadata; mysql> RESET MASTER; mysql> RESET SLAVE ALL; JS > var cluster = dba.getCluster() JS > var cluster = dba.getCluster("<Cluster_name>") JS > var cluster = dba.createCluster('name') JS > cluster.removeInstance('root@<IP_Address>:<Port_No>',{force: true}) JS > cluster.addInstance('root@<IP add>,:<port>') JS > cluster.addInstance('root@ <IP add>,:<port> ') JS > dba.getC...

InnoDB cluster Remove Instance Force | Add InnoDB instance

InnoDB cluster environment UUID is different on node: To fix it stop group replication, remove instance (use force if require), add instance back Identify the node which is not in sync: Execute following SQL statement on each node and identify the node has different UUID on all nodes. mysql> select * from mysql_innodb_cluster_metadata.instances; Stop group replication: Stop group replication on the node which does not have same UUID on all nodes. mysql > stop GROUP_REPLICATION; Remove instances from cluster: Remove all secondary node from the cluster and add them back if require. $mysqlsh JS >\c root@<IP_Address>:<Port_No> JS > dba.getCluster().status() JS > dba.getCluster () <Cluster:cluster_name> JS > var cluster = dba.getCluster("cluster_name"); JS >  cluster.removeInstance('root@<IP_Address>:<Port_No>'); If you get "Cluster.removeInstance: Timeout reached waiting......" JS > cluster.removeInstance(...

Oracle E-Business Suite Online Patch Phases executing adop

Following description about Oracle E-Business Suite is high level and from documentation https://docs.oracle.com/cd/E26401_01/doc.122/e22954/T202991T531062.htm#5281339 for in depth and detail description refer it. The online patching cycle phases: Prepare Apply Finalize Cutover Cleanup Prepare phase: Start a new online patching cycle, Prepares the environment for patching. $ adop phase=prepare Apply phase: Applies the specified patches to the environment. Apply one or more patches to the patch edition. $ adop phase=apply patches=123456,789101 workers=8 Finalize phase: Performs any final steps required to make the system ready for cutover. Perform the final patching operations that can be executed while the application is still online. $ adop phase=finalize Cutover phase: Shuts down application tier services, makes the patch edition the new run edition, and then restarts application tier services. This is the only phase that involves a brief ...