1015 lines
37 KiB
Diff
1015 lines
37 KiB
Diff
diff --git a/.secignore b/.secignore
|
||
index 1085ab2..d951c07 100644
|
||
--- a/.secignore
|
||
+++ b/.secignore
|
||
@@ -188,6 +188,8 @@
|
||
http://helloworld.com/*
|
||
http://1.1.1.1:8080/*
|
||
https://mirrors.aliyun.com/*
|
||
+ https://mirrors.oceanbase.com/*
|
||
+ http://mirrors.oceanbase.com/*
|
||
https://bixense.com/clicolors/
|
||
martin.gieseking@uos.de
|
||
jloup@gzip.org
|
||
diff --git a/cmake/RPM.cmake b/cmake/RPM.cmake
|
||
index f0cec90..5771ba3 100644
|
||
--- a/cmake/RPM.cmake
|
||
+++ b/cmake/RPM.cmake
|
||
@@ -64,27 +64,31 @@ set(CPACK_RPM_SPEC_MORE_DEFINE
|
||
if (OB_BUILD_OPENSOURCE)
|
||
set(CPACK_RPM_PACKAGE_REQUIRES "jq, systemd")
|
||
|
||
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/oceanbase-service.sh.template
|
||
- ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/oceanbase-service.sh
|
||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/oceanbase-service.sh.template
|
||
+ ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/oceanbase-service.sh
|
||
@ONLY)
|
||
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/telemetry.sh.template
|
||
- ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/telemetry.sh
|
||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/telemetry.sh.template
|
||
+ ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/telemetry.sh
|
||
@ONLY)
|
||
|
||
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/post_install.sh.template
|
||
- ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/post_install.sh
|
||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/pre_install.sh.template
|
||
+ ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/pre_install.sh
|
||
@ONLY)
|
||
- set(CPACK_RPM_SERVER_POST_INSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/post_install.sh)
|
||
+ set(CPACK_RPM_SERVER_PRE_INSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/pre_install.sh)
|
||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/post_install.sh.template
|
||
+ ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/post_install.sh
|
||
+ @ONLY)
|
||
+ set(CPACK_RPM_SERVER_POST_INSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/post_install.sh)
|
||
|
||
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/pre_uninstall.sh.template
|
||
- ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/pre_uninstall.sh
|
||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/pre_uninstall.sh.template
|
||
+ ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/pre_uninstall.sh
|
||
@ONLY)
|
||
- set(CPACK_RPM_SERVER_PRE_UNINSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/pre_uninstall.sh)
|
||
+ set(CPACK_RPM_SERVER_PRE_UNINSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/pre_uninstall.sh)
|
||
|
||
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/post_uninstall.sh.template
|
||
- ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/post_uninstall.sh
|
||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/post_uninstall.sh.template
|
||
+ ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/post_uninstall.sh
|
||
@ONLY)
|
||
- set(CPACK_RPM_SERVER_POST_UNINSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/rpm/systemd/profile/post_uninstall.sh)
|
||
+ set(CPACK_RPM_SERVER_POST_UNINSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/tools/systemd/profile/post_uninstall.sh)
|
||
endif()
|
||
|
||
## TIPS
|
||
@@ -134,14 +138,15 @@ install(
|
||
|
||
if (OB_BUILD_OPENSOURCE)
|
||
install(FILES
|
||
- tools/rpm/systemd/profile/oceanbase.cnf
|
||
- tools/rpm/systemd/profile/oceanbase-pre.json
|
||
- tools/rpm/systemd/profile/oceanbase.service
|
||
- tools/rpm/systemd/profile/oceanbase-service.sh
|
||
- tools/rpm/systemd/profile/post_install.sh
|
||
- tools/rpm/systemd/profile/post_uninstall.sh
|
||
- tools/rpm/systemd/profile/pre_uninstall.sh
|
||
- tools/rpm/systemd/profile/telemetry.sh
|
||
+ tools/systemd/profile/oceanbase.cnf
|
||
+ tools/systemd/profile/oceanbase-pre.json
|
||
+ tools/systemd/profile/oceanbase.service
|
||
+ tools/systemd/profile/oceanbase-service.sh
|
||
+ tools/systemd/profile/pre_install.sh
|
||
+ tools/systemd/profile/post_install.sh
|
||
+ tools/systemd/profile/post_uninstall.sh
|
||
+ tools/systemd/profile/pre_uninstall.sh
|
||
+ tools/systemd/profile/telemetry.sh
|
||
DESTINATION profile
|
||
COMPONENT server)
|
||
endif()
|
||
@@ -230,171 +235,6 @@ install(FILES
|
||
DESTINATION include
|
||
COMPONENT sql-parser)
|
||
|
||
-## oceanbsae-table
|
||
-install(FILES
|
||
- deps/oblib/src/common/data_buffer.h
|
||
- deps/oblib/src/common/ob_accuracy.h
|
||
- deps/oblib/src/common/ob_action_flag.h
|
||
- deps/oblib/src/common/ob_common_utility.h
|
||
- deps/oblib/src/common/ob_range.h
|
||
- deps/oblib/src/common/ob_region.h
|
||
- deps/oblib/src/common/ob_role.h
|
||
- deps/oblib/src/common/ob_string_buf.h
|
||
- deps/oblib/src/common/ob_string_buf.ipp
|
||
- deps/oblib/src/common/ob_timeout_ctx.h
|
||
- deps/oblib/src/common/ob_zerofill_info.h
|
||
- deps/oblib/src/common/ob_zone.h
|
||
- deps/oblib/src/common/object/ob_obj_type.h
|
||
- deps/oblib/src/common/object/ob_object.h
|
||
- deps/oblib/src/common/rowkey/ob_rowkey.h
|
||
- deps/oblib/src/common/rowkey/ob_rowkey_info.h
|
||
- deps/oblib/src/lib/alloc/abit_set.h
|
||
- deps/oblib/src/lib/alloc/alloc_assist.h
|
||
- deps/oblib/src/lib/alloc/alloc_func.h
|
||
- deps/oblib/src/lib/alloc/alloc_struct.h
|
||
- deps/oblib/src/lib/alloc/block_set.h
|
||
- deps/oblib/src/lib/alloc/ob_malloc_allocator.h
|
||
- deps/oblib/src/lib/alloc/ob_tenant_ctx_allocator.h
|
||
- deps/oblib/src/lib/alloc/object_mgr.h
|
||
- deps/oblib/src/lib/alloc/object_set.h
|
||
- deps/oblib/src/lib/allocator/ob_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_cached_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_concurrent_fifo_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_fifo_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_lf_fifo_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_malloc.h
|
||
- deps/oblib/src/lib/allocator/ob_mod_define.h
|
||
- deps/oblib/src/lib/allocator/ob_pcounter.h
|
||
- deps/oblib/src/lib/allocator/ob_pooled_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_retire_station.h
|
||
- deps/oblib/src/lib/allocator/ob_small_allocator.h
|
||
- deps/oblib/src/lib/allocator/ob_tc_malloc.h
|
||
- deps/oblib/src/lib/allocator/page_arena.h
|
||
- deps/oblib/src/lib/atomic/ob_atomic.h
|
||
- deps/oblib/src/lib/atomic/ob_atomic_reference.h
|
||
- deps/oblib/src/lib/charset/ob_charset.h
|
||
- deps/oblib/src/lib/charset/ob_config.h
|
||
- deps/oblib/src/lib/charset/ob_ctype.h
|
||
- deps/oblib/src/lib/charset/ob_mysql_global.h
|
||
- deps/oblib/src/lib/checksum/ob_crc64.h
|
||
- deps/oblib/src/lib/container/ob_array.h
|
||
- deps/oblib/src/lib/container/ob_array_helper.h
|
||
- deps/oblib/src/lib/container/ob_array_iterator.h
|
||
- deps/oblib/src/lib/container/ob_array_serialization.h
|
||
- deps/oblib/src/lib/container/ob_array_wrap.h
|
||
- deps/oblib/src/lib/container/ob_bit_set.h
|
||
- deps/oblib/src/lib/container/ob_fixed_array.h
|
||
- deps/oblib/src/lib/container/ob_iarray.h
|
||
- deps/oblib/src/lib/container/ob_se_array.h
|
||
- deps/oblib/src/lib/container/ob_vector.h
|
||
- deps/oblib/src/lib/container/ob_vector.ipp
|
||
- deps/oblib/src/lib/core_local/ob_core_local_storage.h
|
||
- deps/oblib/src/lib/file/config.h
|
||
- deps/oblib/src/lib/file/ob_string_util.h
|
||
- deps/oblib/src/lib/hash/mprotect.h
|
||
- deps/oblib/src/lib/hash/ob_array_index_hash_set.h
|
||
- deps/oblib/src/lib/hash/ob_hashmap.h
|
||
- deps/oblib/src/lib/hash/ob_hashset.h
|
||
- deps/oblib/src/lib/hash/ob_hashtable.h
|
||
- deps/oblib/src/lib/hash/ob_hashutils.h
|
||
- deps/oblib/src/lib/hash/ob_iteratable_hashmap.h
|
||
- deps/oblib/src/lib/hash/ob_linear_hash_map.h
|
||
- deps/oblib/src/lib/hash/ob_placement_hashutils.h
|
||
- deps/oblib/src/lib/hash/ob_pointer_hashmap.h
|
||
- deps/oblib/src/lib/hash/ob_serialization.h
|
||
- deps/oblib/src/lib/hash_func/murmur_hash.h
|
||
- deps/oblib/src/lib/hash_func/ob_hash_func.h
|
||
- deps/oblib/src/lib/json/ob_yson.h
|
||
- deps/oblib/src/lib/json/ob_yson_encode.h
|
||
- deps/oblib/src/lib/list/ob_dlink_node.h
|
||
- deps/oblib/src/lib/list/ob_dlist.h
|
||
- deps/oblib/src/lib/list/ob_list.h
|
||
- deps/oblib/src/lib/lock/cond.h
|
||
- deps/oblib/src/lib/lock/ob_lock.h
|
||
- deps/oblib/src/lib/lock/ob_monitor.h
|
||
- deps/oblib/src/lib/lock/mutex.h
|
||
- deps/oblib/src/lib/lock/ob_bucket_lock.h
|
||
- deps/oblib/src/lib/lock/ob_drw_lock.h
|
||
- deps/oblib/src/lib/lock/ob_latch.h
|
||
- deps/oblib/src/lib/lock/ob_lock_guard.h
|
||
- deps/oblib/src/lib/lock/ob_mutex.h
|
||
- deps/oblib/src/lib/lock/ob_small_spin_lock.h
|
||
- deps/oblib/src/lib/lock/ob_spin_lock.h
|
||
- deps/oblib/src/lib/lock/ob_spin_rwlock.h
|
||
- deps/oblib/src/lib/lock/ob_thread_cond.h
|
||
- deps/oblib/src/lib/lock/ob_rwlock.h
|
||
- deps/oblib/src/lib/metrics/ob_counter.h
|
||
- deps/oblib/src/lib/net/ob_addr.h
|
||
- deps/oblib/src/lib/net/ob_net_util.h
|
||
- deps/oblib/src/lib/number/ob_number_v2.h
|
||
- deps/oblib/src/lib/ob_date_unit_type.h
|
||
- deps/oblib/src/lib/ob_define.h
|
||
- deps/oblib/src/lib/ob_errno.h
|
||
- deps/oblib/src/lib/ob_name_def.h
|
||
- deps/oblib/src/lib/ob_name_id_def.h
|
||
- deps/oblib/src/lib/oblog/ob_log.h
|
||
- deps/oblib/src/lib/oblog/ob_log_module.h
|
||
- deps/oblib/src/lib/oblog/ob_log_print_kv.h
|
||
- deps/oblib/src/lib/oblog/ob_trace_log.h
|
||
- deps/oblib/src/lib/profile/ob_atomic_event.h
|
||
- deps/oblib/src/lib/queue/ob_dedup_queue.h
|
||
- deps/oblib/src/lib/queue/ob_fixed_queue.h
|
||
- deps/oblib/src/lib/queue/ob_link.h
|
||
- deps/oblib/src/lib/random/ob_random.h
|
||
- deps/oblib/src/lib/resource/achunk_mgr.h
|
||
- deps/oblib/src/lib/resource/ob_cache_washer.h
|
||
- deps/oblib/src/lib/resource/ob_resource_mgr.h
|
||
- deps/oblib/src/lib/stat/ob_latch_define.h
|
||
- deps/oblib/src/lib/string/ob_fixed_length_string.h
|
||
- deps/oblib/src/lib/string/ob_string.h
|
||
- deps/oblib/src/lib/string/ob_strings.h
|
||
- deps/oblib/src/lib/thread_local/ob_tsi_factory.h
|
||
- deps/oblib/src/lib/thread_local/ob_tsi_utils.h
|
||
- deps/oblib/src/lib/time/Time.h
|
||
- deps/oblib/src/lib/time/ob_time_utility.h
|
||
- deps/oblib/src/lib/timezone/ob_time_convert.h
|
||
- deps/oblib/src/lib/timezone/ob_timezone_info.h
|
||
- deps/oblib/src/lib/trace/ob_seq_event_recorder.h
|
||
- deps/oblib/src/lib/trace/ob_trace_event.h
|
||
- deps/oblib/src/lib/utility/ob_hang_fatal_error.h
|
||
- deps/oblib/src/lib/utility/ob_macro_utils.h
|
||
- deps/oblib/src/lib/utility/ob_print_kv.h
|
||
- deps/oblib/src/lib/utility/ob_print_utils.h
|
||
- deps/oblib/src/lib/utility/ob_rate_limiter.h
|
||
- deps/oblib/src/lib/utility/ob_serialization_helper.h
|
||
- deps/oblib/src/lib/utility/ob_template_utils.h
|
||
- deps/oblib/src/lib/utility/ob_unify_serialize.h
|
||
- deps/oblib/src/lib/utility/serialization.h
|
||
- deps/oblib/src/lib/utility/utility.h
|
||
- deps/oblib/src/lib/wait_event/ob_wait_class.h
|
||
- deps/oblib/src/lib/wait_event/ob_wait_event.h
|
||
- src/share/config/ob_common_config.h
|
||
- src/share/config/ob_config.h
|
||
- src/share/config/ob_config_helper.h
|
||
- src/share/mysql_errno.h
|
||
- src/share/object/ob_obj_cast.h
|
||
- src/share/partition_table/ob_partition_location.h
|
||
- src/share/table/ob_table.h
|
||
- src/share/table/ob_table_rpc_proxy.h
|
||
- src/share/table/ob_table_rpc_struct.h
|
||
- src/libtable/src/libobtable.h
|
||
- src/libtable/src/ob_table.h
|
||
- src/libtable/src/ob_hkv_table.h
|
||
- src/libtable/src/ob_pstore.h
|
||
- src/libtable/src/ob_table_service_client.h
|
||
- src/libtable/src/ob_table_service_config.h
|
||
- src/libtable/src/ob_table_define.h
|
||
- DESTINATION include
|
||
- COMPONENT table)
|
||
-
|
||
-install(FILES
|
||
- src/libtable/examples/ob_pstore_example.cpp
|
||
- src/libtable/examples/ob_kvtable_example.cpp
|
||
- src/libtable/examples/ob_table_example.cpp
|
||
- src/libtable/examples/example_makefile.mk
|
||
- DESTINATION examples
|
||
- COMPONENT table)
|
||
-
|
||
if (OB_BUILD_LIBOBTABLE)
|
||
|
||
if (ENABLE_THIN_LTO)
|
||
@@ -406,14 +246,6 @@ if (OB_BUILD_LIBOBTABLE)
|
||
COMMAND_EXPAND_LISTS)
|
||
list(APPEND BITCODE_TO_ELF_LIST libobtable_static_to_elf)
|
||
endif()
|
||
-
|
||
- install(PROGRAMS
|
||
- ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so
|
||
- ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so.1
|
||
- ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so.1.0.0
|
||
- ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable_static.a
|
||
- DESTINATION lib
|
||
- COMPONENT table)
|
||
endif()
|
||
|
||
if(OB_BUILD_OPENSOURCE)
|
||
diff --git a/deps/init/dep_create.sh b/deps/init/dep_create.sh
|
||
index ad5f149..4ad0adb 100644
|
||
--- a/deps/init/dep_create.sh
|
||
+++ b/deps/init/dep_create.sh
|
||
@@ -80,6 +80,9 @@ function get_os_release() {
|
||
fedora)
|
||
version_ge "33" && compat_centos7 && return
|
||
;;
|
||
+ openEuler)
|
||
+ version_ge "20" && compat_centos9 && return
|
||
+ ;;
|
||
opensuse-leap)
|
||
version_ge "15" && compat_centos7 && return
|
||
;;
|
||
@@ -106,10 +109,18 @@ function get_os_release() {
|
||
version_ge "8.0" && compat_centos8 && return
|
||
version_ge "7.0" && compat_centos7 && return
|
||
;;
|
||
+ anolis)
|
||
+ version_ge "23.0" && compat_centos9 && return
|
||
+ version_ge "8.0" && compat_centos8 && return
|
||
+ version_ge "7.0" && compat_centos7 && return
|
||
+ ;;
|
||
centos)
|
||
version_ge "8.0" && OS_RELEASE=8 && return
|
||
version_ge "7.0" && OS_RELEASE=7 && return
|
||
;;
|
||
+ openEuler)
|
||
+ version_ge "20" && compat_centos9 && return
|
||
+ ;;
|
||
ubuntu)
|
||
version_ge "22.04" && compat_centos9 && return
|
||
version_ge "16.04" && compat_centos7 && return
|
||
diff --git a/deps/init/oceanbase.el7.aarch64.deps b/deps/init/oceanbase.el7.aarch64.deps
|
||
index 56c510d..1397b9c 100644
|
||
--- a/deps/init/oceanbase.el7.aarch64.deps
|
||
+++ b/deps/init/oceanbase.el7.aarch64.deps
|
||
@@ -1,12 +1,12 @@
|
||
[target-default]
|
||
os=7
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/7/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/7/aarch64/
|
||
|
||
[target-community]
|
||
os=7
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/community/stable/el/7/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/community/stable/el/7/aarch64/
|
||
|
||
|
||
[deps]
|
||
diff --git a/deps/init/oceanbase.el7.x86_64.deps b/deps/init/oceanbase.el7.x86_64.deps
|
||
index e86e501..5b83a69 100644
|
||
--- a/deps/init/oceanbase.el7.x86_64.deps
|
||
+++ b/deps/init/oceanbase.el7.x86_64.deps
|
||
@@ -1,13 +1,13 @@
|
||
[target-default]
|
||
os=7
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/7/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/7/x86_64/
|
||
|
||
|
||
[target-community]
|
||
os=7
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/community/stable/el/7/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/community/stable/el/7/x86_64/
|
||
|
||
|
||
[deps]
|
||
diff --git a/deps/init/oceanbase.el8.aarch64.deps b/deps/init/oceanbase.el8.aarch64.deps
|
||
index 2b8612c..919cd33 100644
|
||
--- a/deps/init/oceanbase.el8.aarch64.deps
|
||
+++ b/deps/init/oceanbase.el8.aarch64.deps
|
||
@@ -1,12 +1,12 @@
|
||
[target-default]
|
||
os=8
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/8/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/8/aarch64/
|
||
|
||
[target-community]
|
||
os=8
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/community/stable/el/8/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/community/stable/el/8/aarch64/
|
||
|
||
|
||
[deps]
|
||
diff --git a/deps/init/oceanbase.el8.x86_64.deps b/deps/init/oceanbase.el8.x86_64.deps
|
||
index bda5fcc..db3c8a1 100644
|
||
--- a/deps/init/oceanbase.el8.x86_64.deps
|
||
+++ b/deps/init/oceanbase.el8.x86_64.deps
|
||
@@ -1,12 +1,12 @@
|
||
[target-default]
|
||
os=8
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/8/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/8/x86_64/
|
||
|
||
[target-community]
|
||
os=8
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/community/stable/el/8/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/community/stable/el/8/x86_64/
|
||
|
||
|
||
[deps]
|
||
diff --git a/deps/init/oceanbase.el9.aarch64.deps b/deps/init/oceanbase.el9.aarch64.deps
|
||
index 136767c..07d4b9a 100644
|
||
--- a/deps/init/oceanbase.el9.aarch64.deps
|
||
+++ b/deps/init/oceanbase.el9.aarch64.deps
|
||
@@ -1,17 +1,17 @@
|
||
[target-default]
|
||
os=9
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/8/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/8/aarch64/
|
||
|
||
[target-community]
|
||
os=9
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/community/stable/el/8/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/community/stable/el/8/aarch64/
|
||
|
||
[target-apr-el9]
|
||
os=9
|
||
arch=aarch64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/9/aarch64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/9/aarch64/
|
||
|
||
[deps]
|
||
devdeps-gtest-1.8.0-132022101316.el8.aarch64.rpm
|
||
@@ -46,8 +46,9 @@ obdevtools-gcc9-9.3.0-52022092914.el8.aarch64.rpm
|
||
obdevtools-llvm-11.0.1-312022092921.el8.aarch64.rpm
|
||
|
||
[tools-deps]
|
||
-devdeps-oblogmsg-1.0-52022113019.el8.aarch64.rpm
|
||
+devdeps-oblogmsg-1.0-142024012415.el8.aarch64.rpm
|
||
devdeps-rocksdb-6.22.1.1-52022100420.el8.aarch64.rpm
|
||
+obshell-4.2.2.0-122024022614.el8.aarch64.rpm target=community
|
||
|
||
[test-utils]
|
||
ob-deploy-1.6.0-41.el8.aarch64.rpm target=community
|
||
diff --git a/deps/init/oceanbase.el9.x86_64.deps b/deps/init/oceanbase.el9.x86_64.deps
|
||
index e9712b3..a359e80 100644
|
||
--- a/deps/init/oceanbase.el9.x86_64.deps
|
||
+++ b/deps/init/oceanbase.el9.x86_64.deps
|
||
@@ -1,17 +1,17 @@
|
||
[target-default]
|
||
os=9
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/8/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/8/x86_64/
|
||
|
||
[target-community]
|
||
os=9
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/community/stable/el/8/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/community/stable/el/8/x86_64/
|
||
|
||
[target-apr-el9]
|
||
os=9
|
||
arch=x86_64
|
||
-repo=http://mirrors.aliyun.com/oceanbase/development-kit/el/9/x86_64/
|
||
+repo=https://mirrors.oceanbase.com/oceanbase/development-kit/el/9/x86_64/
|
||
|
||
[deps]
|
||
devdeps-gtest-1.8.0-132022101316.el8.x86_64.rpm
|
||
@@ -47,8 +47,9 @@ obdevtools-gcc9-9.3.0-52022092914.el8.x86_64.rpm
|
||
obdevtools-llvm-11.0.1-312022092921.el8.x86_64.rpm
|
||
|
||
[tools-deps]
|
||
-devdeps-oblogmsg-1.0-52022113019.el8.x86_64.rpm
|
||
+devdeps-oblogmsg-1.0-142024012415.el8.x86_64.rpm
|
||
devdeps-rocksdb-6.22.1.1-52022100420.el8.x86_64.rpm
|
||
+obshell-4.2.2.0-122024022614.el8.x86_64.rpm target=community
|
||
|
||
[test-utils]
|
||
ob-deploy-1.6.0-41.el8.x86_64.rpm target=community
|
||
diff --git a/tools/rpm/systemd/README-CN.md b/tools/rpm/systemd/README-CN.md
|
||
deleted file mode 100644
|
||
index 2af52a9..0000000
|
||
--- a/tools/rpm/systemd/README-CN.md
|
||
+++ /dev/null
|
||
@@ -1,27 +0,0 @@
|
||
-# 通过yum和systemd的方式安装OceanBase数据库
|
||
-如果你想在linux rpm平台上部署oceanbase,可以使用yum进行单节点安装,并通过systemd进行简单管理
|
||
-
|
||
-**注意**
|
||
-
|
||
-- 该方法仅能用做学习研究或测试使用;
|
||
-- 千万不要使用此方法用于带有重要数据的场景,比如生产环境。
|
||
-
|
||
-## 安装方法
|
||
-现在暂时只支持RPM平台系统,可以通过以下指令进行安装和启动:
|
||
-```bash
|
||
-yum install oceanbase-ce
|
||
-systemctl start oceanbase
|
||
-```
|
||
-可以通过以下指令将oceanbase服务设置为开机自启动:
|
||
-```bash
|
||
-systemctl enable oceanbase
|
||
-```
|
||
-
|
||
-## systemd介绍
|
||
-Systemd提供了自动化管理oceanbase的启动和停止,可以通过systemctl指令对oceanbase进行管理控制,例如:
|
||
-```bash
|
||
-systemctl {start|stop|restart|status} oceanbase
|
||
-```
|
||
-
|
||
-## 通过systemd配置oceanbase
|
||
-systemd提供了配置文件`/etc/oceanbase.cnf`,可以在启动前修改配置进行带参启动
|
||
diff --git a/tools/rpm/systemd/README.md b/tools/rpm/systemd/README.md
|
||
deleted file mode 100644
|
||
index 89bb399..0000000
|
||
--- a/tools/rpm/systemd/README.md
|
||
+++ /dev/null
|
||
@@ -1,27 +0,0 @@
|
||
-# Installing OceanBase Database via yum and systemd
|
||
-If you want to deploy OceanBase on a Linux RPM platform, you can use yum for single-node installation and simple management with systemd.
|
||
-
|
||
-**WARNING**
|
||
-
|
||
-- The installation method is just used for study or test;
|
||
-- You should not deploy it with important data as it is not used in production environment.
|
||
-
|
||
-## Installation Method
|
||
-Now systemd only support RPM platform and you can install and run oceanbase service using the following command:
|
||
-```bash
|
||
-yum install oceanbase-ce
|
||
-systemctl start oceanbase
|
||
-```
|
||
-You can set the OceanBase service to start automatically on boot using the following command:
|
||
-```bash
|
||
-systemctl enable oceanbase
|
||
-```
|
||
-
|
||
-## Overview of systemd
|
||
-Systemd provides automatic oceanbase startup and shutdown. It also enables manual server management using the systemctl command. For example:
|
||
-```bash
|
||
-systemctl {start|stop|restart|status} oceanbase
|
||
-```
|
||
-
|
||
-## Oceanbase configuration by systemd
|
||
-Systemd provide `/etc/oceanbase.cnf` to config oceanbase before startup.
|
||
diff --git a/tools/rpm/systemd/profile/post_install.sh.template b/tools/rpm/systemd/profile/post_install.sh.template
|
||
deleted file mode 100644
|
||
index 94df4dc..0000000
|
||
--- a/tools/rpm/systemd/profile/post_install.sh.template
|
||
+++ /dev/null
|
||
@@ -1,14 +0,0 @@
|
||
-#!/bin/bash
|
||
-
|
||
-echo "execute post install script"
|
||
-prefix=@CPACK_PACKAGING_INSTALL_PREFIX@
|
||
-
|
||
-# prepare the systemd service unit
|
||
-cp -f $prefix/profile/oceanbase.service /etc/systemd/system/oceanbase.service
|
||
-chmod 644 /etc/systemd/system/oceanbase.service
|
||
-chmod +x $prefix/profile/oceanbase-service.sh
|
||
-cp -f $prefix/profile/oceanbase.cnf /etc/oceanbase.cnf
|
||
-systemctl daemon-reload
|
||
-
|
||
-# telemetry
|
||
-/bin/bash $prefix/profile/telemetry.sh $1 >/dev/null 2>&1
|
||
\ No newline at end of file
|
||
diff --git a/tools/rpm/systemd/profile/post_uninstall.sh.template b/tools/rpm/systemd/profile/post_uninstall.sh.template
|
||
deleted file mode 100644
|
||
index 0b3666c..0000000
|
||
--- a/tools/rpm/systemd/profile/post_uninstall.sh.template
|
||
+++ /dev/null
|
||
@@ -1,6 +0,0 @@
|
||
-#!/bin/bash
|
||
-
|
||
-echo "execute post uninstall script"
|
||
-prefix=@CPACK_PACKAGING_INSTALL_PREFIX@
|
||
-
|
||
-rm -rf $prefix/.meta $prefix/log_obshell
|
||
\ No newline at end of file
|
||
diff --git a/tools/systemd/README-CN.md b/tools/systemd/README-CN.md
|
||
new file mode 100644
|
||
index 0000000..3911528
|
||
--- /dev/null
|
||
+++ b/tools/systemd/README-CN.md
|
||
@@ -0,0 +1,54 @@
|
||
+# 通过软件源安装 OceanBase 数据库
|
||
+如果你想在Linux rpm或deb平台上部署OceanBase,可以使用yum或apt进行单节点安装,并通过systemd进行简单管理
|
||
+
|
||
+**注意**
|
||
+
|
||
+- 该方法仅能用做学习研究或测试使用;
|
||
+- 千万不要使用此方法用于带有重要数据的场景,比如生产环境。
|
||
+
|
||
+## 通过 YUM 仓库安装 OceanBase
|
||
+配置yum源,安装OceanBase,会自动安装所需依赖
|
||
+```bash
|
||
+yum install -y yum-utils
|
||
+yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
|
||
+yum install -y oceanbase-ce
|
||
+```
|
||
+
|
||
+## 通过 APT 仓库安装 OceanBase
|
||
+配置apt源,安装OceanBase,会自动安装所需依赖
|
||
+```bash
|
||
+apt update
|
||
+apt install -y lsb-release wget gnupg2 mysql-client curl
|
||
+wget http://mirrors.oceanbase.com/oceanbase/oceanbase_deb.pub && apt-key add oceanbase_deb.pub
|
||
+echo "deb http://mirrors.oceanbase.com/oceanbase/community/stable/$(lsb_release -is | awk '{print tolower($0)}')/$(lsb_release -cs)/$(dpkg --print-architecture)/ ./" | tee -a /etc/apt/sources.list.d/oceanbase.list
|
||
+apt update
|
||
+apt install -y oceanbase-ce
|
||
+```
|
||
+
|
||
+## 依赖列表说明:
|
||
+| 组件 | 版本 |
|
||
+|-------|-------|
|
||
+| oceanbase-ce-libs | 与oceanbase-ce相同版本 |
|
||
+| jq | / |
|
||
+| oniguruma | / |
|
||
+| curl | / |
|
||
+
|
||
+# 启动方法
|
||
+可以通过以下指令进行启动:
|
||
+```bash
|
||
+systemctl start oceanbase
|
||
+```
|
||
+
|
||
+可以通过以下指令将oceanbase服务设置为开机自启动:
|
||
+```bash
|
||
+systemctl enable oceanbase
|
||
+```
|
||
+
|
||
+## systemd介绍
|
||
+Systemd提供了自动化管理oceanbase的启动和停止,可以通过systemctl指令对oceanbase进行管理控制,例如:
|
||
+```bash
|
||
+systemctl {start|stop|restart|status} oceanbase
|
||
+```
|
||
+
|
||
+## 通过systemd配置OceanBase
|
||
+systemd提供了配置文件`/etc/oceanbase.cnf`,可以在启动前修改配置进行带参启动
|
||
diff --git a/tools/systemd/README.md b/tools/systemd/README.md
|
||
new file mode 100644
|
||
index 0000000..2d0832f
|
||
--- /dev/null
|
||
+++ b/tools/systemd/README.md
|
||
@@ -0,0 +1,53 @@
|
||
+# Installing OceanBase Database via yum/apt
|
||
+If you want to deploy OceanBase on a Linux RPM platform, you can use yum/apt for single-node installation and simple management with systemd.
|
||
+
|
||
+**WARNING**
|
||
+
|
||
+- The installation method is just used for study or test;
|
||
+- You should not deploy it with important data as it is not used in production environment.
|
||
+
|
||
+## Installing OceanBase via yum
|
||
+Config yum repo then install OceanBase, it will automatically install the required dependencies.
|
||
+```bash
|
||
+yum install -y yum-utils
|
||
+yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
|
||
+yum install -y oceanbase-ce
|
||
+```
|
||
+
|
||
+## Installing OceanBase via apt
|
||
+Config apt repo then install OceanBase, it will automatically install the required dependencies.
|
||
+```bash
|
||
+apt update
|
||
+apt install -y lsb-release wget gnupg2 mysql-client curl
|
||
+wget http://mirrors.oceanbase.com/oceanbase/oceanbase_deb.pub && apt-key add oceanbase_deb.pub
|
||
+echo "deb http://mirrors.oceanbase.com/oceanbase/community/stable/$(lsb_release -is | awk '{print tolower($0)}')/$(lsb_release -cs)/$(dpkg --print-architecture)/ ./" | tee -a /etc/apt/sources.list.d/oceanbase.list
|
||
+apt update
|
||
+apt install -y oceanbase-ce
|
||
+```
|
||
+
|
||
+## Dependencies list:
|
||
+| dependency | version |
|
||
+|-------|-------|
|
||
+| oceanbase-ce-libs | same version with oceanbase-ce |
|
||
+| jq | / |
|
||
+| oniguruma | / |
|
||
+| curl | / |
|
||
+
|
||
+# Startup Method
|
||
+You can install and run OceanBase service using the following command:
|
||
+```bash
|
||
+systemctl start oceanbase
|
||
+```
|
||
+You can set the OceanBase service to start automatically on boot using the following command:
|
||
+```bash
|
||
+systemctl enable oceanbase
|
||
+```
|
||
+
|
||
+## Overview of systemd
|
||
+Systemd provides automatic OceanBase startup and shutdown. It also enables manual server management using the systemctl command. For example:
|
||
+```bash
|
||
+systemctl {start|stop|restart|status} oceanbase
|
||
+```
|
||
+
|
||
+## Oceanbase configuration by systemd
|
||
+Systemd provide `/etc/oceanbase.cnf` to config OceanBase before startup.
|
||
diff --git a/tools/rpm/systemd/profile/oceanbase-pre.json b/tools/systemd/profile/oceanbase-pre.json
|
||
similarity index 100%
|
||
rename from tools/rpm/systemd/profile/oceanbase-pre.json
|
||
rename to tools/systemd/profile/oceanbase-pre.json
|
||
diff --git a/tools/rpm/systemd/profile/oceanbase-service.sh.template b/tools/systemd/profile/oceanbase-service.sh.template
|
||
similarity index 85%
|
||
rename from tools/rpm/systemd/profile/oceanbase-service.sh.template
|
||
rename to tools/systemd/profile/oceanbase-service.sh.template
|
||
index c726e6d..04184ee 100644
|
||
--- a/tools/rpm/systemd/profile/oceanbase-service.sh.template
|
||
+++ b/tools/systemd/profile/oceanbase-service.sh.template
|
||
@@ -2,12 +2,14 @@
|
||
|
||
DATE=`date '+%Y-%m-%d %H:%M:%S'`
|
||
cnf_file='/etc/oceanbase.cnf'
|
||
-ip=`hostname -i`
|
||
+ip=`hostname -I | awk '/^[0-9]/ {print $1; exit}'`
|
||
port=2886
|
||
url="http://localhost"
|
||
prefix=@CPACK_PACKAGING_INSTALL_PREFIX@
|
||
unix_socket="$prefix/run/obshell.sock"
|
||
obshell="$prefix/bin/obshell"
|
||
+etc_folder="$prefix/etc"
|
||
+current_user=`whoami`
|
||
report=3
|
||
|
||
function prepare_config_json {
|
||
@@ -43,6 +45,11 @@ function prepare_config_json {
|
||
sed -i "s|HOSTIP|${ip}|g" $json_file
|
||
}
|
||
|
||
+function prepare_env {
|
||
+ echo "change etc owner to ${current_user}"
|
||
+ chown $current_user:$current_user "${etc_folder}"
|
||
+}
|
||
+
|
||
function do_reload_observer {
|
||
echo "Not support reload now"
|
||
}
|
||
@@ -72,8 +79,8 @@ function check_obagent_process {
|
||
echo "obshell process with PID $pid is not running."
|
||
$obshell admin start --ip $ip --port $port
|
||
if [ $? -ne 0 ]; then
|
||
- echo "start ob_agent failed"
|
||
- exit
|
||
+ echo "start ob_shell failed"
|
||
+ exit 1
|
||
fi
|
||
fi
|
||
else
|
||
@@ -103,10 +110,10 @@ function check_trace {
|
||
state=$(echo "$response" | jq -r '.data.state')
|
||
echo "the response state is $state"
|
||
if [ "x$state" = "xSUCCEED" ]; then
|
||
- echo "request successfully"
|
||
+ echo "$content request successfully"
|
||
break
|
||
elif [ "x$state" = "xFAILED" ]; then
|
||
- echo "request failed"
|
||
+ echo "$content request failed"
|
||
exit 1
|
||
else
|
||
count=$((count + 1))
|
||
@@ -123,8 +130,8 @@ function check_trace {
|
||
function start_obshell {
|
||
$obshell admin start --ip $ip --port $port > /dev/null 2>&1
|
||
if [ $? -ne 0 ]; then
|
||
- echo "start ob_agent failed"
|
||
- exit
|
||
+ echo "start ob_shell failed"
|
||
+ exit 1
|
||
fi
|
||
}
|
||
|
||
@@ -169,19 +176,10 @@ function do_config_observer {
|
||
check_trace $trace "config observer" 3 3
|
||
}
|
||
|
||
-function deploy_observer {
|
||
- echo "oceanbase service deployed at ${DATE}"
|
||
- prepare_config_json
|
||
- start_obshell
|
||
- do_config_observer
|
||
-}
|
||
-
|
||
-function start_observer {
|
||
- systemd-notify --ready
|
||
+function do_start_observer {
|
||
# check observer status
|
||
response=$(curl --silent -H "Content-Type: application/json" -X GET --unix-socket $unix_socket $url/api/v1/status)
|
||
identity=$(echo "$response" | jq -r '.data.agent.identity')
|
||
- systemd-notify "STATUS=Service is running"
|
||
if [ "x$identity" = "xCLUSTER AGENT" ]; then
|
||
echo "The observer is already bootstrap, please start it immediately"
|
||
response=$(curl --silent -H "Content-Type: application/json" -X POST -d '{
|
||
@@ -222,41 +220,40 @@ function start_observer {
|
||
echo "The observer has been installed before"
|
||
fi
|
||
|
||
- systemd-notify --status="Service is ready"
|
||
-
|
||
if [ -f $prefix/run/observer.pid ]; then
|
||
pid=$(cat $prefix/run/observer.pid)
|
||
- while true; do
|
||
- if [ ! -d "/proc/$pid" ]; then
|
||
- echo "Observer process with PID $pid has exited."
|
||
- break
|
||
- fi
|
||
+ if [ ! -d "/proc/$pid" ]; then
|
||
+ echo "Observer process with PID $pid has exited."
|
||
+ break
|
||
+ fi
|
||
|
||
- echo "Observer process with PID $pid is still running."
|
||
- # check observer state
|
||
- response=$(curl --silent -H "Content-Type: application/json" -X GET -d '{
|
||
- "scope":
|
||
- {
|
||
- "type":"global",
|
||
- "target":[]
|
||
- },
|
||
- "force": true
|
||
- }' --unix-socket $unix_socket $url/api/v1/status)
|
||
- ob_state=$(echo "$response" | jq -r '.data.obState')
|
||
- if [ "x$ob_state" = "x1" ]; then
|
||
- echo "The agent dose not know the observer password"
|
||
- echo "1. Please set environment: export OB_ROOT_PASSWORD={root_passowrd}"
|
||
- echo "2. Kill all the obshell process"
|
||
- echo "3. Restart the agent process: $prefix/bin/obshell admin start --ip $ip --port $port"
|
||
- fi
|
||
- sleep 30
|
||
- done
|
||
+ # check observer state
|
||
+ response=$(curl --silent -H "Content-Type: application/json" -X GET --unix-socket $unix_socket $url/api/v1/status)
|
||
+ ob_state=$(echo "$response" | jq -r '.data.obState')
|
||
+ if [ "x$ob_state" = "x1" ]; then
|
||
+ echo "The agent dose not know the observer password"
|
||
+ echo "1. Please set environment: export OB_ROOT_PASSWORD={root_passowrd}"
|
||
+ echo "2. Kill all the obshell process"
|
||
+ echo "3. Restart the agent process: $prefix/bin/obshell admin start --ip $ip --port $port"
|
||
+ fi
|
||
else
|
||
echo "observer PID file not found."
|
||
exit 1
|
||
fi
|
||
}
|
||
|
||
+function start_observer {
|
||
+ /bin/bash $prefix/profile/telemetry.sh $report "10" >/dev/null 2>&1
|
||
+ prepare_config_json
|
||
+ prepare_env
|
||
+ if check_daemon_process; then
|
||
+ echo "The agent service is exist"
|
||
+ else
|
||
+ start_obshell
|
||
+ fi
|
||
+ do_start_observer
|
||
+}
|
||
+
|
||
function stop_observer {
|
||
check_obagent_process
|
||
response=$(curl --silent -H "Content-Type: application/json" -X POST -d '{
|
||
@@ -274,7 +271,6 @@ function stop_observer {
|
||
fi
|
||
trace=$(echo "$response" | jq -r '.data.id')
|
||
check_trace $trace "stop observer" 20 6
|
||
- systemd-notify --status='STOPPING=1'
|
||
}
|
||
|
||
function reload_observer {
|
||
@@ -285,15 +281,7 @@ function reload_observer {
|
||
|
||
if [ "x$1" = "xstart" ]; then
|
||
echo "oceanbase service started at ${DATE}"
|
||
- /bin/bash $prefix/profile/telemetry.sh $report "10" >/dev/null 2>&1
|
||
- prepare_config_json
|
||
- if check_daemon_process; then
|
||
- echo "The agent service is exist"
|
||
- else
|
||
- start_obshell
|
||
- fi
|
||
start_observer
|
||
-
|
||
elif [ "x$1" = "xstop" ]; then
|
||
echo "oceanbase service stopped at ${DATE}"
|
||
stop_observer
|
||
@@ -306,7 +294,7 @@ elif [ "x$1" = "xdestroy" ]; then
|
||
$obshell admin stop > /dev/null 2>&1
|
||
if [ $? -ne 0 ]; then
|
||
echo "stop obshell failed"
|
||
- exit
|
||
+ exit 1
|
||
fi
|
||
fi
|
||
|
||
diff --git a/tools/rpm/systemd/profile/oceanbase.cnf b/tools/systemd/profile/oceanbase.cnf
|
||
similarity index 100%
|
||
rename from tools/rpm/systemd/profile/oceanbase.cnf
|
||
rename to tools/systemd/profile/oceanbase.cnf
|
||
diff --git a/tools/rpm/systemd/profile/oceanbase.service b/tools/systemd/profile/oceanbase.service
|
||
similarity index 52%
|
||
rename from tools/rpm/systemd/profile/oceanbase.service
|
||
rename to tools/systemd/profile/oceanbase.service
|
||
index bc3b05f..7e135fa 100644
|
||
--- a/tools/rpm/systemd/profile/oceanbase.service
|
||
+++ b/tools/systemd/profile/oceanbase.service
|
||
@@ -3,11 +3,22 @@ Description=oceanbase
|
||
|
||
[Service]
|
||
User=root
|
||
-Type=notify
|
||
+Type=forking
|
||
KillMode=none
|
||
ExecStart=/bin/bash /home/admin/oceanbase/profile/oceanbase-service.sh start
|
||
ExecStop=/bin/bash /home/admin/oceanbase/profile/oceanbase-service.sh stop
|
||
ExecReload=/bin/bash /home/admin/oceanbase/profile/oceanbase-service.sh reload
|
||
+PIDFile=/home/admin/oceanbase/run/observer.pid
|
||
+TimeoutSec=2000
|
||
+TimeoutStopSec=300
|
||
+Restart=on-failure
|
||
+RestartSec=10
|
||
+SuccessExitStatus=SIGKILL
|
||
+SendSIGKILL=no
|
||
+LimitNOFILE=infinity
|
||
+LimitNPROC=infinity
|
||
+LimitCORE=infinity
|
||
+LimitSTACK=infinity
|
||
|
||
[Install]
|
||
WantedBy=multi-user.target
|
||
\ No newline at end of file
|
||
diff --git a/tools/systemd/profile/post_install.sh.template b/tools/systemd/profile/post_install.sh.template
|
||
new file mode 100644
|
||
index 0000000..21ad989
|
||
--- /dev/null
|
||
+++ b/tools/systemd/profile/post_install.sh.template
|
||
@@ -0,0 +1,20 @@
|
||
+#!/bin/bash
|
||
+echo "execute post install script"
|
||
+prefix=@CPACK_PACKAGING_INSTALL_PREFIX@
|
||
+
|
||
+# prepare the systemd service unit
|
||
+cp -f $prefix/profile/oceanbase.service /etc/systemd/system/oceanbase.service
|
||
+chmod 644 /etc/systemd/system/oceanbase.service
|
||
+chmod +x $prefix/profile/oceanbase-service.sh
|
||
+cp -f $prefix/profile/oceanbase.cnf /etc/oceanbase.cnf
|
||
+systemctl daemon-reload
|
||
+
|
||
+# telemetry
|
||
+/bin/bash $prefix/profile/telemetry.sh $1 >/dev/null 2>&1
|
||
+
|
||
+GREEN='\033[32m'
|
||
+NC="\033[0m"
|
||
+echo -e "${GREEN}To configure OceanBase${NC} : edit /etc/oceanbase.cnf"
|
||
+echo -e "${GREEN}To start OceanBase${NC} : systemctl start oceanbase"
|
||
+echo -e "${GREEN}To enable OceanBase auto reboot ${NC} : systemctl enable oceanbase"
|
||
+echo -e "${GREEN}To get more infomation${NC} : https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000640297"
|
||
\ No newline at end of file
|
||
diff --git a/tools/systemd/profile/post_uninstall.sh.template b/tools/systemd/profile/post_uninstall.sh.template
|
||
new file mode 100644
|
||
index 0000000..65e826f
|
||
--- /dev/null
|
||
+++ b/tools/systemd/profile/post_uninstall.sh.template
|
||
@@ -0,0 +1,24 @@
|
||
+#!/bin/bash
|
||
+echo "execute post uninstall script"
|
||
+prefix=@CPACK_PACKAGING_INSTALL_PREFIX@
|
||
+json_file=$prefix/profile/oceanbase.json
|
||
+GREEN='\033[32m'
|
||
+NC="\033[0m"
|
||
+
|
||
+if [ $1 -eq 0 ]; then
|
||
+ rm -rf $prefix/.meta $prefix/log_obshell
|
||
+
|
||
+ # prepare clean script
|
||
+ echo "find $prefix/ -mindepth 1 -maxdepth 1 ! -name lib -exec rm -rf {} +" > $prefix/oceanbase_clean.sh
|
||
+
|
||
+ if [ -f "$json_file" ] && [ -s "$json_file" ]; then
|
||
+ redo_dir=$(cat "$json_file" | jq -r '.oceanbase_ce.server.observerConfig.redo_dir')
|
||
+ echo "rm -rf $redo_dir" >> $prefix/oceanbase_clean.sh
|
||
+ data_dir=$(cat "$json_file" | jq -r '.oceanbase_ce.server.observerConfig.data_dir')
|
||
+ echo "rm -rf $data_dir" >> $prefix/oceanbase_clean.sh
|
||
+ echo "echo OK" >> $prefix/oceanbase_clean.sh
|
||
+ fi
|
||
+
|
||
+ echo "Clean oceanbase script can clean ob all configuration files and all data files."
|
||
+ echo -e "${GREEN}To clean OceanBase${NC} : bash $prefix/oceanbase_clean.sh"
|
||
+fi
|
||
\ No newline at end of file
|
||
diff --git a/tools/systemd/profile/pre_install.sh.template b/tools/systemd/profile/pre_install.sh.template
|
||
new file mode 100644
|
||
index 0000000..b87b154
|
||
--- /dev/null
|
||
+++ b/tools/systemd/profile/pre_install.sh.template
|
||
@@ -0,0 +1,11 @@
|
||
+#!/bin/bash
|
||
+echo "execute pre install script"
|
||
+version=@OceanBase_CE_VERSION@
|
||
+
|
||
+if [ "$1" -gt 1 ]; then
|
||
+ parent_name=$(cat /proc/$PPID/comm)
|
||
+ if [[ "$parent_name" != "ocp_mgragent" ]]; then
|
||
+ echo "The upgrade of the oceanbase $version is not allowed." >&2
|
||
+ exit 1
|
||
+ fi
|
||
+fi
|
||
\ No newline at end of file
|
||
diff --git a/tools/rpm/systemd/profile/pre_uninstall.sh.template b/tools/systemd/profile/pre_uninstall.sh.template
|
||
similarity index 84%
|
||
rename from tools/rpm/systemd/profile/pre_uninstall.sh.template
|
||
rename to tools/systemd/profile/pre_uninstall.sh.template
|
||
index 23c699d..5c50bde 100644
|
||
--- a/tools/rpm/systemd/profile/pre_uninstall.sh.template
|
||
+++ b/tools/systemd/profile/pre_uninstall.sh.template
|
||
@@ -1,5 +1,4 @@
|
||
#!/bin/bash
|
||
-
|
||
echo "execute pre uninstall script"
|
||
prefix=@CPACK_PACKAGING_INSTALL_PREFIX@
|
||
|
||
diff --git a/tools/rpm/systemd/profile/telemetry.sh.template b/tools/systemd/profile/telemetry.sh.template
|
||
similarity index 100%
|
||
rename from tools/rpm/systemd/profile/telemetry.sh.template
|
||
rename to tools/systemd/profile/telemetry.sh.template
|
||
diff --git a/tools/systemd/profile/telemetry.sh.template.rej b/tools/systemd/profile/telemetry.sh.template.rej
|
||
new file mode 100644
|
||
index 0000000..96945a4
|
||
--- /dev/null
|
||
+++ b/tools/systemd/profile/telemetry.sh.template.rej
|
||
@@ -0,0 +1,10 @@
|
||
+diff a/tools/systemd/profile/telemetry.sh.template b/tools/systemd/profile/telemetry.sh.template (rejected hunks)
|
||
+@@ -4,7 +4,7 @@ url="https://openwebapi.oceanbase.com/api/web/oceanbase/report"
|
||
+ type=@CPACK_PACKAGE_NAME@
|
||
+ version=@CPACK_PACKAGE_VERSION@
|
||
+ release=@CPACK_RPM_PACKAGE_RELEASE@
|
||
+-ip=$(hostname -i)
|
||
++ip=$(hostname -I | awk '/^[0-9]/ {print $1; exit}')
|
||
+ hostHash=$(echo -n "$ip" | sha1sum | awk '{print $1}')
|
||
+ osName=$(cat /etc/os-release | grep "^ID=" | cut -f2 -d=)
|
||
+ osRelease=$(cat /etc/os-release | grep "^VERSION_ID=" | cut -f2 -d=)
|