
# 使用FileCatalogStore对catalog进行持久化
#### 操作场景
在FlinkSQL中，通过SQL Client创建的Catalog元数据默认存储在内存中，当SQL Client重启后，之前创建的Catalog信息将丢失，需要重新创建，频繁重建Catalog不仅增加了操作成本，还可能导致配置不一致。可以使用FileCatalogStore将Catalog元数据持久化到文件系统中，重启后自动加载已保存的Catalog配置，本章节提供使用FileCatalogStore的操作入门指导。
#### 约束与限制
本章节适用于MRS 3.6.0-LTS及之后版本。
#### 操作步骤
1. 已安装集群客户端，例如安装目录为"/opt/hadoopclient"。 
   下载并安装集群客户端的具体操作，请参考[安装MRS集群客户端](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0089.html)。
   
   
2. 在Flink客户端配置文件"*客户端安装目录* /Flink/flink/conf/flink-conf.yaml"中新增如下配置：
   
   ```
   table.catalog-store.kind: file  // 设置catalog存储类型
   table.catalog-store.file.path: hdfs:///flink/catalogStore  // 设置catalog存储的文件路径
   ```
   
   
3. 以客户端安装用户，登录安装客户端的节点。
4. 参考[使用SQL•Client](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_249266.html)启动一个SQL Client。
5. 在SQL client中执行SQL语句新增一个MySQL catalog，例如： 
   ```
   CREATE CATALOG `jdbcCatalog` WITH (
    'type'='jdbc', 
    'default-database'='flink', 
    'username'='xxx', 
    'password'='xxx', 
    'base-url'='jdbc:mysql://mysql服务ip:mysql服务端口'
   );
   ```
   
   
6. 用HDFS客户端查看持久化到目录的catalog配置文件。 
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000002148167629.png "点击放大")
   
   
7. 退出SQL Client重新启动后，还能查到之前创建的catalog 
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000002148130125.png "点击放大")
   
   
 
