Skip to content
Snippets Groups Projects
Commit 4be6671c authored by Konstantinos Samaras-Tsakiris's avatar Konstantinos Samaras-Tsakiris
Browse files

Fix primary key auto increment

parent 8cc1ea8f
No related branches found
No related tags found
1 merge request!18Fix primary key auto increment
Pipeline #3740465 failed
#!/bin/bash
# 1. Get all the DB credentials
# Decode them
# And store them in a single line each in a file. Each line is a JSON for a single site.
#oc get -o json secret -l dbcredentials -A | \
# jq -r '.items[] | .data[] |= @base64d | {"name": (.metadata.namespace + .metadata.name), "data": .data}' | \
# jq -r -c '{"name":.name} + {"data": (.data | to_entries | map(("export "+.key+"="+.value)))}' > secrets.json
# 2. Create a DB env file for each site
[[ ! -d "sites" ]] && mkdir "sites"
create_env_file(){
JSON="$1"
filename=$(jq -r '.name' <<<"$JSON")
jq -r '.data[]' <<<"$JSON" > "sites/$filename"
}
while IFS= read -r siteJSON; do
create_env_file "$siteJSON"
done < secrets.json
# 3. Perform the operation for each DB
# reset-auto-increment.sh
TABLES_FILE="`dirname $0`/tables-primarykey"
sql_connect(){
echo "mysql --user=$dbUser --password=$dbPassword --database=$dbName --host=$dbHost --port=$dbPort -A -s"
}
export -f sql_connect
reset_table(){
TABLE="$0"
COLUMN="$1"
connstr="`sql_connect`"
NEW_INCR=$(($(echo "SELECT max($COLUMN) from $TABLE;" | $connstr)+1))
echo "ALTER TABLE $TABLE AUTO_INCREMENT = $NEW_INCR;" | $connstr
}
export -f reset_table
for site in `ls sites`; do
. "sites/$site"
cat "$TABLES_FILE" | xargs -L1 bash -c 'reset_table $1'
done
block_content id
block_content_revision revision_id
comment cid
feeds_feed fid
feeds_subscription fid
file_managed fid
flood fid
locales_source lid
menu_link_content id
menu_link_content_revision revision_id
menu_tree mlid
migrate_message_block_content_body_field msgid
migrate_message_block_content_entity_display msgid
migrate_message_block_content_entity_form_display msgid
migrate_message_block_content_type msgid
migrate_message_d6_custom_block msgid
migrate_message_d7_authmap msgid
migrate_message_d7_block msgid
migrate_message_d7_color msgid
migrate_message_d7_comment msgid
migrate_message_d7_comment_entity_display msgid
migrate_message_d7_comment_entity_form_display msgid
migrate_message_d7_comment_entity_form_display_subject msgid
migrate_message_d7_comment_field msgid
migrate_message_d7_comment_field_instance msgid
migrate_message_d7_comment_type msgid
migrate_message_d7_custom_block msgid
migrate_message_d7_dblog_settings msgid
migrate_message_d7_field msgid
migrate_message_d7_field_formatter_settings msgid
migrate_message_d7_field_instance msgid
migrate_message_d7_field_instance_widget_insert_settings msgid
migrate_message_d7_field_instance_widget_settings msgid
migrate_message_d7_file msgid
migrate_message_d7_file_private msgid
migrate_message_d7_filter_format msgid
migrate_message_d7_filter_settings msgid
migrate_message_d7_global_theme_settings msgid
migrate_message_d7_image_settings msgid
migrate_message_d7_image_styles msgid
migrate_message_d7_language_content_settings msgid
migrate_message_d7_language_negotiation_settings msgid
migrate_message_d7_language_types msgid
migrate_message_d7_matomo_settings msgid
migrate_message_d7_matomo_user_settings msgid
migrate_message_d7_menu msgid
migrate_message_d7_menu_links msgid
migrate_message_d7_node__article msgid
migrate_message_d7_node__certificates msgid
migrate_message_d7_node__contact_name msgid
migrate_message_d7_node__getting_started_info msgid
migrate_message_d7_node__image_upload msgid
migrate_message_d7_node__job_posting msgid
migrate_message_d7_node__management msgid
migrate_message_d7_node__mou msgid
migrate_message_d7_node__news msgid
migrate_message_d7_node__page msgid
migrate_message_d7_node__panel msgid
migrate_message_d7_node__security msgid
migrate_message_d7_node__tools msgid
migrate_message_d7_node__webform msgid
migrate_message_d7_node_revision__article msgid
migrate_message_d7_node_revision__certificates msgid
migrate_message_d7_node_revision__contact_name msgid
migrate_message_d7_node_revision__getting_started_info msgid
migrate_message_d7_node_revision__image_upload msgid
migrate_message_d7_node_revision__job_posting msgid
migrate_message_d7_node_revision__management msgid
migrate_message_d7_node_revision__mou msgid
migrate_message_d7_node_revision__news msgid
migrate_message_d7_node_revision__page msgid
migrate_message_d7_node_revision__panel msgid
migrate_message_d7_node_revision__security msgid
migrate_message_d7_node_revision__tools msgid
migrate_message_d7_node_revision__webform msgid
migrate_message_d7_node_settings msgid
migrate_message_d7_node_title_label msgid
migrate_message_d7_node_type msgid
migrate_message_d7_path_redirect msgid
migrate_message_d7_pathauto_patterns msgid
migrate_message_d7_pathauto_settings msgid
migrate_message_d7_rdf_mapping msgid
migrate_message_d7_search_page msgid
migrate_message_d7_search_settings msgid
migrate_message_d7_shortcut msgid
migrate_message_d7_shortcut_set msgid
migrate_message_d7_shortcut_set_users msgid
migrate_message_d7_simplesamlphp_auth msgid
migrate_message_d7_syslog_settings msgid
migrate_message_d7_system_authorize msgid
migrate_message_d7_system_cron msgid
migrate_message_d7_system_date msgid
migrate_message_d7_system_file msgid
migrate_message_d7_system_mail msgid
migrate_message_d7_system_performance msgid
migrate_message_d7_taxonomy_term__country msgid
migrate_message_d7_taxonomy_term__tags msgid
migrate_message_d7_taxonomy_vocabulary msgid
migrate_message_d7_theme_settings msgid
migrate_message_d7_url_alias msgid
migrate_message_d7_user msgid
migrate_message_d7_user_flood msgid
migrate_message_d7_user_mail msgid
migrate_message_d7_user_role msgid
migrate_message_d7_view_modes msgid
migrate_message_default_language msgid
migrate_message_file_settings msgid
migrate_message_language msgid
migrate_message_language_prefixes_and_domains msgid
migrate_message_locale_settings msgid
migrate_message_menu_settings msgid
migrate_message_system_image msgid
migrate_message_system_image_gd msgid
migrate_message_system_logging msgid
migrate_message_system_maintenance msgid
migrate_message_system_rss msgid
migrate_message_system_site msgid
migrate_message_taxonomy_settings msgid
migrate_message_text_settings msgid
migrate_message_update_settings msgid
migrate_message_user_picture_entity_display msgid
migrate_message_user_picture_entity_form_display msgid
migrate_message_user_picture_field msgid
migrate_message_user_picture_field_instance msgid
node nid
node_revision vid
old_5e1f1a_url_alias pid
openid_connect_authmap aid
path_alias id
path_alias_revision revision_id
queue item_id
redirect rid
sequences value
shortcut id
taxonomy_term_data tid
taxonomy_term_revision revision_id
watchdog wid
webform_submission sid
locales_location lid
users uid
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment