• keycloak9.0.2单机模式整合mysql8


    1. 基本环境

    java 版本

    java -version
    

    mysql版本是mysql8

    keycloak版本9.0.2

    下载地址

    2. 安装

    直接解压缩到某个目录,父目录不带空格即可

    1. 配置mysql驱动

    mysql-connector-java-8.0.18jar包下载地址

    ${KEYCLOAK_HOME}/modules/system/layers/base/com/mysql/main
    

    创建目录: ${KEYCLOAK_HOME}modulessystemlayersasecommysqlmain ,把驱动文件 mysql-connector-java-8.0.13.jar 复制到此目录

    新建文件:module.xml,内容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <module name="com.mysql" xmlns="urn:jboss:module:1.5">
        <resources>
            <resource-root path="mysql-connector-java-8.0.18.jar"/>
        </resources>
        <dependencies>
            <module name="javax.api"/>
            <module name="javax.transaction.api"/>
            <module name="javax.servlet.api" optional="true"/>
        </dependencies>
    </module>
    

    2. 修改standalone.xml 文件

    ${KEYCLOAK_HOME}standaloneconfigurationstandalone.xml
    

    插入如下配置

    <driver name="mysql" module="com.mysql">
        <xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class>
    </driver>
    

    查找 datasources一节,修改 jndi-name="java:jboss/datasources/KeycloakDS 这节的xml,内容如下

     <datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true">
        <connection-url>jdbc:mysql://localhost:3306/keycloak?useSSL=false&amp;serverTimezone=GMT%2B8&amp;characterEncoding=UTF-8</connection-url> <!-- 增加时区东八区,增加强制UTF8编码,让其能够写入特殊字符,关闭ssl警告 -->
        <driver>mysql</driver>
        <security>
            <user-name>root</user-name>
            <password>123456</password>
        </security>
    </datasource>
    

    注意修改数据库配置信息

    3. 创建mysql数据库

    create database keycloak default character set = "UTF8" default collate = "utf8_general_ci";
    -- 或者如下命令检查数据库是否正确
    show create database keycloak;
    'keycloak', 'CREATE DATABASE `keycloak` /*!40100 DEFAULT CHARACTER SET utf8 */'
    

    utf8mb4库不支持问题

    4. 检查mysql的配置文件my.ini是否设置超时时间

    [mysqld]
    wait_timeout=10000
    interactive_timeout=10000
    

    如果不配置,安装keycloak会报错参考[getting the error when I am trying to connect my mysql server with keycloak at my local in standalone mode.](https://developer.jboss.org/message/962145)

    配置完毕后记得重启mysql

    5. 安装keycloak

    进入keycloak解压目录中的bin文件夹,以管理员权限运行standalone.bat

    此时即是以单机模式启动keycloak

    3. 访问

    参考

    keycloak搭配mysql

    KEYCLOAK集成MYSQL

  • 相关阅读:
    MapReduce 基础
    HDFS 快照(了解)
    HDFS 回收站(了解)
    HDFS 数据拷贝
    微信小程序(9)——多个空格写法
    react中使用jsonp跨域
    docker 介绍
    事务,悲观锁和乐观锁
    接口幂等性
    分布式爬虫
  • 原文地址:https://www.cnblogs.com/ifme/p/12588910.html
Copyright © 2020-2023  润新知