Skip to content
Snippets Groups Projects
Commit 8dc6febd authored by Auri's avatar Auri
Browse files

sql/v1: include database schema for use with the server

parent f852bd40
No related branches found
No related tags found
No related merge requests found
This directory contains the PostgreSQL scripts required to prepare the database
for use with the API server and cdn-origin.
Reference:
- v1.sql: the raw, unprocessed output of pg_dump --no-owner --no-privileges
--schema-only over the main owo database, version 1.
--
-- PostgreSQL database dump
--
-- Dumped from database version 14.5
-- Dumped by pg_dump version 14.5
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
SET default_tablespace = '';
SET default_table_access_method = heap;
--
-- Name: file_bans; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.file_bans (
sha256_hash bytea NOT NULL,
did_quarantine boolean DEFAULT false NOT NULL,
reason integer DEFAULT 0 NOT NULL,
description character varying(1024) DEFAULT NULL::character varying,
malware_name character varying(256) DEFAULT NULL::character varying
);
--
-- Name: objects; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.objects (
bucket_key character varying(1088) NOT NULL,
bucket character varying(20) NOT NULL,
key character varying(1024) NOT NULL,
dir character varying(1024) NOT NULL,
type integer DEFAULT 0 NOT NULL,
backend_file_id character varying(33) DEFAULT NULL::character varying,
dest_url character varying(4096) DEFAULT NULL::character varying,
content_type character varying(255) DEFAULT 'application/octet-stream'::character varying,
content_length integer,
created_at timestamp without time zone DEFAULT now() NOT NULL,
random_key character varying(1024) DEFAULT NULL::character varying,
associated_user character varying(36) DEFAULT NULL::character varying,
deleted_at timestamp without time zone,
delete_reason character varying(256) DEFAULT NULL::character varying,
sha256_hash bytea,
md5_hash bytea
);
--
-- Name: tokens; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.tokens (
id integer NOT NULL,
user_id character varying(255) NOT NULL,
token character varying(255) NOT NULL
);
--
-- Name: tokens_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.tokens_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: tokens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.tokens_id_seq OWNED BY public.tokens.id;
--
-- Name: users; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.users (
id character varying(255) NOT NULL,
username character varying(255) NOT NULL,
email character varying(255) NOT NULL,
is_admin boolean DEFAULT false NOT NULL,
is_blocked boolean DEFAULT false NOT NULL,
username_lower character varying(255) NOT NULL,
bucket_capacity integer
);
--
-- Name: tokens id; Type: DEFAULT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.tokens ALTER COLUMN id SET DEFAULT nextval('public.tokens_id_seq'::regclass);
--
-- Name: file_bans file_bans_sha256_hash_key; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.file_bans
ADD CONSTRAINT file_bans_sha256_hash_key UNIQUE (sha256_hash);
--
-- Name: objects objects_bucket_key_key; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.objects
ADD CONSTRAINT objects_bucket_key_key UNIQUE (bucket_key);
--
-- Name: tokens tokens_pk; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.tokens
ADD CONSTRAINT tokens_pk PRIMARY KEY (id);
--
-- Name: tokens tokens_token_key; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.tokens
ADD CONSTRAINT tokens_token_key UNIQUE (token);
--
-- Name: users username_lower_unique; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT username_lower_unique UNIQUE (username_lower);
--
-- Name: users users_email_key; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_email_key UNIQUE (email);
--
-- Name: users users_pk; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_pk PRIMARY KEY (id);
--
-- Name: users users_username_key; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_username_key UNIQUE (username);
--
-- Name: objects_associated_user; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX objects_associated_user ON public.objects USING btree (associated_user);
--
-- Name: objects_bucket_random_key; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX objects_bucket_random_key ON public.objects USING btree (bucket, random_key);
--
-- Name: objects_sha256_hash_idx; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX objects_sha256_hash_idx ON public.objects USING btree (sha256_hash);
--
-- PostgreSQL database dump complete
--
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