create table t2 as select * from t1;
as创建出来的t2表(新表)缺少t1表(源表)的索引信息,只有表结构相同,没有索引。create table t2 like t1 ;
like 创建出来的新表包含源表的完整表结构和索引信息。CREATE TABLE 新表名 AS
SELECT 列1, 列2, ...
FROM 已有表名
WHERE 条件;
示例CREATE TABLE employees (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
position VARCHAR(100),
salary DECIMAL(10, 2)
);
并且这个表里已经有一些数据。现在你想创建一个新表 high_salary_employees,只包含那些薪水高于5000的员工。你可以这样做:CREATE TABLE high_salary_employees AS
SELECT id, name, position, salary
FROM employees
WHERE salary > 5000;
执行这个语句后,high_salary_employees 表就会被创建,并且包含所有满足 salary > 5000 条件的 employees 表中的记录。 memory_limit = 128M
将其修改为想要设定的内存大小,例如: memory_limit = 256M
ini_set('memory_limit', '256M');
php_value memory_limit 256M
sudo dmidecode -s system-serial-number
查看终端输出的序列号。cat /sys/class/dmi/id/product_serial
查看终端输出的序列号。sudo lshw -class system | grep serial
查看终端输出的序列号。Host {name}
HostName {host}
User {user}
IdentityFile ~/.ssh/id_rsa
Host {name}
HostName {host}
Port {port}
User {user}
IdentityFile ~/.ssh/id_rsa
注意空格和缩进vim /etc/gitlab/gitlab.rb
#修改如下:
gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" //gitlab默认备份目录,如有需要可更改
gitlab_rails['backup_archive_permissions'] = 0644 //生成的备份文件权限
gitlab_rails['backup_keep_time'] = 604800 //默认备份保留天数为7天(这里是604800秒)
更改完成后重载配置文件gitlab-ctl reconfigure
二、手动备份gitlab-backup create
三、自动备份cd
cd bin/
vim gitlab_backup.sh
#!/bin/bash
/usr/bin/gitlab-rake gitlab:backup:create
然后加入到crontab中0 2 * * * /bin/bash /root/bin/gitlab_backup.sh > /dev/null 2>&1
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
查看gitlab状态gitlab-ctl status
2、通过之前的备份文件进行恢复(默认的是/var/opt/gitlab/backups)gitlab-backup restore force=yes
# 如果/var/opt/gitlab/backups/下有多个备份文件,可以执行下面命令指定恢复的目标
gitlab-backup restore force=yes BACKUP=1673231242_2023_01_09_15.5.4
最后再次启动Gitlabgitlab-ctl start
恢复命令完成后,可以check检查一下恢复情况gitlab-rake gitlab:check SANITIZE=true
然后稍等一会(如果启动gitlab后,访问出现500,这是因为redis等程序还没完全启动,等一会儿访问就ok了),再次登录Gitlab,就会发现之前误删除的test项目已经恢复了!