Mysql
 sql >> база данни >  >> RDS >> Mysql

Свържете Metabase с MySQL за изследване на данни

Какво е Metabase

Metabase предоставя интерфейс за запитване на данни във вашия браузър. В допълнение към поддръжката на SQL заявки, Metabase предлага функционалност за анализиране на данни без SQL, създаване на табла за управление и проследяване на показатели. Това ръководство показва как да свържете MySQL към Metabase, след което да разположите на NGINX чрез обратен прокси.

Има редица допълнителни бази данни, които се поддържат от SQLite до PostgreSQL. Визуализирането на резултатите става много лесно чрез интуитивен интерфейс. Това прави Metabase гъвкава за споделяне на данни дори между хора без аналитичен опит.

Инсталиране на метабаза

Среда за изпълнение на Java

Стъпките в този раздел ще инсталират Java 8 JDK на Ubuntu 16.04. За други дистрибуции вижте официалните документи.

  1. Инсталирайте software-properties-common за лесно добавяне на нови хранилища:

    sudo apt-get install software-properties-common
    
  2. Добавете Java PPA:

    sudo add-apt-repository ppa:webupd8team/java
    
  3. Актуализирайте списъка с източници:

    sudo apt-get update
    
  4. Инсталирайте Java JDK 8:

    sudo apt-get install oracle-java8-installer
    

MySQL сървър

  1. Изтеглете MySQL сървър. Въведете root парола, когато е посочена:

    sudo apt install mysql-server
    
  2. Влезте като root потребител:

    mysql -u root -p
    
  3. Създайте база данни и потребител за Metabase:

    CREATE DATABASE employees;
    CREATE USER 'metabase_user' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON employees.* TO 'metabase_user';
    GRANT RELOAD ON *.* TO 'metabase_user';
    FLUSH PRIVILEGES;
    quit
    

Изтегляне на метабаза

  1. Изтеглете jar файла от Metabase:

    wget http://downloads.metabase.com/v0.28.1/metabase.jar
    
  2. Преместете файла в /var така че да може да започне при рестартиране:

    sudo mv metabase.jar /var/metabase.jar
    

Обратно прокси с NGINX

  1. Инсталирайте NGINX

    sudo apt install nginx
    
  2. Създайте нов конфигурационен файл NGINX с настройките по-долу за настройка server_name с вашия FDQN или публичен IP адрес:

    Файл:/ etc/nginx/conf.d/metabase.conf
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    
    server {
            listen 80;
            listen [::]:80;
    
            server_name _;
    
            location / {
                 proxy_pass http://localhost:3000/;
                 proxy_redirect http://localhost:3000/ $scheme://$host/;
                 proxy_http_version 1.1;
                 proxy_set_header Upgrade $http_upgrade;
                 proxy_set_header Connection "Upgrade";
            }
    }
  3. Проверете дали няма проблеми с конфигурацията:

    sudo nginx -t
    
  4. Рестартирайте NGINX:

    sudo systemctl restart nginx
    

Изтеглете примерна база данни MySQL

TheEmployees Testing Database е примерна база данни, която може да бъде заредена в MySQL. Базата данни се състои от данни за служители и заплати с над 2,8 милиона записа, този размер я прави полезна за експериментиране по нетривиален начин.

  1. Инсталирайте git:

    sudo apt install git
    
  2. Клонирайте хранилището, съдържащо тестовата база данни:

    git clone https://github.com/datacharmer/test_db.git
    
  3. Навигирайте в клонираното хранилище:

    cd test_db
    
  4. Заредете employees.sql в metabase_example база данни и въведете потребителската парола на базата данни, когато бъдете подканени:

    mysql -u metabase_user -p employees < employees.sql
    

    Конзолата ще разпечата таблиците, които са заредени, както и общото време за завършване.

    Enter password:
    INFO
    CREATING DATABASE STRUCTURE
    INFO
    storage engine: InnoDB
    INFO
    LOADING departments
    INFO
    LOADING employees
    INFO
    LOADING dept_emp
    INFO
    LOADING dept_manager
    INFO
    LOADING titles
    INFO
    LOADING salaries
    data_load_time_diff
    00:00:52

Променливи на средата

  1. Създайте нов текстов файл, съдържащ променливите на средата за Metabase:

    Файл:metabase -env
    1
    2
    3
    4
    5
    6
    
    export MB_DB_TYPE=mysql
    export MB_DB_DBNAME=employees
    export MB_DB_PORT=3306
    export MB_DB_USER=metabase_user
    export MB_DB_PASS=password
    export MB_DB_HOST=localhost
  2. Заредете тези променливи на средата:

    source metabase-env
    

Настройте Metabase да стартира при рестартиране

  1. Проверете пътя на вашия JDK двоичен файл:

    which java
    

    Това трябва да отпечата път като /usr/bin/java .

  2. Създайте конфигурационен файл на systemd, за да гарантирате, че Metabase работи при стартиране. ExecStart= трябва да се зададе на пътя на JDK отгоре. Не забравяйте да замените User с вашето потребителско име в Unix:

    Файл:/ etc/systemd/system/metabase.service
    [Unit]
    Description=Metabase server
    After=syslog.target
    After=network.target[Service]
    User=username
    Type=simple
    
    [Service]
    ExecStart=/usr/bin/java -jar /var/metabase.jar
    Restart=always
    StandardOutput=syslog
    StandardError=syslog
    SyslogIdentifier=metabase
    
    [Install]
    WantedBy=multi-user.target
  3. Приложете промените:

    sudo systemctl start metabase
    
  4. Проверете дали Metabase е активна:

    sudo systemctl status metabase
    

Правила за защитната стена

Забележка Услугата freeCloud Firewall на Linode може да се използва за замяна или допълване на вътрешна конфигурация на защитната стена. За повече информация относно облачните защитни стени вижте нашето ръководство Първи стъпки с облачни защитни стени. За помощ при решаване на общи проблеми със защитната стена вижте ръководството за отстраняване на неизправности със защитни стени.

UFW е чудесен за предотвратяване на неоторизиран достъп до вашата база данни. Разумно по подразбиране е да се разреши порт 80/443 и SSH:

sudo ufw allow http
sudo ufw allow https
sudo ufw allow ssh
sudo ufw enable

Проверете правилата на защитната стена:

sudo ufw status

Метабаза интерфейс

Metabase вече е достъпна в браузъра на публичния IP адрес на вашия Linode.

  1. Първият път, когато се опитате да осъществите достъп, ще отнеме известно време, защото базата данни MySQL трябва да мигрира:

  2. Създайте акаунт:

  3. Въведете информацията за базата данни или пропуснете това, след което добавете информацията по-късно от администраторския панел:

  4. От горното вдясно падащо меню изберете Административен панел, след което щракнете върху Модел на данни в горното меню.

  5. Отляво изберете заплати, за да видите информация за таблицата, като външни ключове и имена на колони. Кликнете върху Добавяне на сегмент :

  6. Създайте филтър, за да видите всички служители със заплата над $50 000 (Metabase ви позволява да създадете този филтър, без да пишете SQL):

  7. Вижте резултатите:

Metabase има много повече функционалност, която можете да изследвате. Вижте официалната документация за други случаи на употреба с Metabase.

Повече информация

Може да пожелаете да се консултирате със следните ресурси за допълнителна информация по тази тема. Въпреки че те са предоставени с надеждата, че ще бъдат полезни, моля, имайте предвид, че не можем да гарантираме за точността или навременността на външно хостваните материали.

  • Официалният уеб сайт на MySQL
  • Метабаза
  • База данни за тестване на служители

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какъв е еквивалентът на SQL Server на ELT() в MySQL?

  2. Свързване на Visual COBOL към MySQL

  3. Как да генерирам данни в MySQL?

  4. mysql_num_rows() очаква параметър 1 да бъде ресурс, булев, даден в

  5. Как да намерите броя на дните между две дати в MySQL