- c. SQL database
-
- a. Installing MySQL
-
- sudo apt-get install mysql-server
-
- Set root passwd during installation (i.e. password\_4\_mysql\_user\_id)
-
- sudo service mysql restart
-
- b. Setting up mysql
-
- mysql -u [username]-p
-
- mysql -uroot -p
-
- Create user (i.e. id=mysql\_user\_id psswd=password\_4\_mysql\_user\_id)
-
- CREATE USER 'appc'@'%' IDENTIFIED BY 'password\_4\_mysql\_user\_id';
-
- GRANT ALL PRIVILEGES ON *.* TO 'mysql\_user\_id'@'%';
-
- SET PASSWORD FOR 'mysql\_user\_id'@'%'=PASSWORD('password\_4\_mysql\_user\_id');
-
- c. Creating schema
-
- CREATE SCHEMA ansible;
-
- SHOW DATABASES;
-
- USE ansible;
-
- CREATE TABLE playbook (name VARCHAR(45) NOT NULL, value BLOB, type VARCHAR(60), version VARCHAR(60), PRIMARY KEY (name));
-
- SHOW TABLES;
-
- CREATE TABLE inventory (hostname VARCHAR(45) NOT NULL, hostgroup VARCHAR(45), credentials VARCHAR(500), PRIMARY KEY (hostname));
-
- SHOW COLUMNS FROM playbook;
-
- SHOW COLUMNS FROM inventory;
-
- GRANT ALL PRIVILEGES ON *.* TO 'mysql\_user\_id'@'%' IDENTIFIED BY 'password\_4\_mysql\_user\_id' WITH GRANT OPTION;
-
- GRANT ALL PRIVILEGES ON *.* TO 'ansible'@'%' IDENTIFIED BY 'ansible\_agent' WITH GRANT OPTION;
-
- FLUSH PRIVILEGES;
-
-
-
- d. Loading playbooks and inventory data in SQL database
-
- Place inventory file and playbooks to be loaded in one directory, set LoadAnsibleMySql variables:
-
- SQL credentials:
-
- host="localhost" # your host, usually localhost
- user="mysql\_user\_id" # your username
- passwd="password\_4\_mysql\_user\_id" # your password
- db="ansible" # name of the database
-
-
- Path of playbook location:
-
- playbook\_path = "something/something/"
-
-
- Full name of inventory file:
-
- inventory = "something/something/Ansible\_inventory"
-
- These variables are located right after main:
-
- |image5|
-
- Run loader: python LoadAnsibleMySql.py
-
- e. Execution