首页 > 数据库 >Typecho博客网站迁移:MySQL ➡️ MarialDB

Typecho博客网站迁移:MySQL ➡️ MarialDB

时间:2023-10-09 19:00:15浏览次数:44  
标签:log 数据库 MarialDB server Typecho MySQL 服务器 迁移

目录

1. 引言

由于服务、价格等因素更换云服务器是很常见的情况,本文记录了Typecho博客网站从原服务器迁移至新服务器的操作过程,其中涉及了Mysql数据库到MarialDB数据库的迁移。新服务器为腾讯云轻量服务器,镜像采用typecho,初始服务器状态如图所示。将网站从迁移主要有如下几个步骤:Typecho自定义配置迁移➡️数据库迁移➡️Nginx配置➡️自定义主题配置。
image

2. Typecho的自定义配置迁移

网站迁移的第一步是将原服务器的“./typecho/usr”目录下的代码复制到新服务器的相同目录内,如此可以完成自定义主题和插件的大部分内容的迁移。

3. 数据库迁移:MySQL- > MarialDB

接着,网站文件之外的数据要通过数据库来迁移内容。新服务器所使用的数据库是MarialDB。MarialDB是一个开源的关系数据库管理系统,是在MySQL数据库的分支基础上进一步开发的,其对MySQL数据库有很好的兼容,所以,将原服务器的MySQL数据库迁移至新服务器的MarialDB数据库还是挺容易的。

3.1 在原服务器中备份并导出数据库文件

mysqldump 是 mysql 用于转存储数据库的命令,用于导出所有数据库的内容,包括表结构和数据。用于导出所有数据库的内容,包括表结构和数据。--all-databases参数表示导出所有数据库的内容,mysqldump 在导出操作中会包括所有可用的数据库。

mysqldump --all-databases --user=typecho --password > backupdb.sql
Enter password: (在此输入密码后按回车)

3.2 将“backupdb.sql”文件拷贝至新服务器并导入数据

使用MySQL命令行工具将backupdb.sql数据库备份文件导入至新数据库中,实现数据库的迁移。

mysql -u root -p < backupdb.sql
Enter password: (在此输入密码后按回车)

4. Nginx配置

完成数据库迁移后,还需要对Nginx进行配置。

user                 nobody;
worker_processes     auto;
worker_rlimit_nofile 65535;

error_log  logs/error.log  notice;

events {
    accept_mutex off;
    use epoll;
    worker_connections  8192;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format       combinedio  '$remote_addr - $remote_user [$time_local] '
                                 '"$request" $status $body_bytes_sent '
                                 '"$http_referer" "$http_user_agent" $request_length $request_time $upstream_response_time';
    access_log logs/access.log combinedio;

    sendfile                     on;
    gzip                         on;
    tcp_nopush                   on;
    tcp_nodelay		         on;

    keepalive_timeout            0;
    client_body_timeout          10;
    client_header_timeout        10;

    client_header_buffer_size    1k;
    large_client_header_buffers  4  4k;
    output_buffers               2  32k;
    client_max_body_size	 64m;
    client_body_buffer_size      256k;

    server_tokens off;

    include http.d/*.conf;

    server{
        location /server-status {
#           stub_status  on;
            allow        127.0.0.1;
            deny         all;
        }


        location /status {
            include      fastcgi.conf;
            fastcgi_pass 127.0.0.1:9000;
            allow        127.0.0.1;
            deny         all;
        }


        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    include include/*.conf;
}
server {
    listen 80 default_server;
    listen       443 ssl;
    server_name  /* 这里写域名 */;
    ssl_certificate /* 这里写证书文件的相对路径或绝对路径 */;
    ssl_certificate_key /* 这里写私钥文件的相对路径或绝对路径 */;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    server_tokens off;

    keepalive_timeout 5;

    root /usr/local/lighthouse/softwares/typecho;
    index index.php index.html;

    access_log logs/typecho.log combinediox;
    error_log logs/typecho.error.log;

    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php$1 last;
    }

    location ~ .*\.php(\/.*)*$ {
        include fastcgi.conf;
        fastcgi_pass   127.0.0.1:9000;
    }
}

5. Handsome主题操作

如果使用Handsom主题,还需要在迁移前备份主题数据以及在迁移后恢复主题备份数据。

标签:log,数据库,MarialDB,server,Typecho,MySQL,服务器,迁移
From: https://www.cnblogs.com/realxuan/p/17752896.html

相关文章

  • MySQL数据库被锁表你有遇到过吗?
    1.被锁原因1、锁表发生在insertupdate、delete中;2、锁表的原理是数据库使用独占式封锁机制,当执行上面的语句时,对表进行锁住,直到发生commite或者回滚或者退出数据库用户;3、锁表的原因:3.1、A程序执行了对tableA的insert,并还未commite时,B程序也对tableA进行insert......
  • openGauss学习笔记-94 openGauss 数据库管理-访问外部数据库-mysql_fdw
    openGauss学习笔记-94openGauss数据库管理-访问外部数据库-mysql_fdwopenGauss的fdw实现的功能是各个openGauss数据库及远程服务器(包括数据库、文件系统)之间的跨库操作。目前支持的远程服务器类型包括Oracle、MySQL(MariaDB)、openGauss(postgres_fdw)、file_fdw、dblink。mysql_f......
  • 数据库MYSQL常用
    1命令操作数据库相关1.1连接和退出mysql服务#账号密码方式(我的本地因为暂时没有密码,所以不需要输入密码)mysql-hlocalhost-P3306-uroot-proot#退出\q1.2数据库操作1.2.1创建数据库createdatabasemydemo;1.2.2显示全部的数据库showdatabases;1.2......
  • 安装Mysql详细步骤
    一、下载安装包地址:https://downloads.mysql.com/archives/community/-根据需要选择安装版本二解压并创建配置文件,创建数据目录1将下载的压缩包解压2在bin目录同级下创建一个文件,命名为my.ini3在bin目录同级下创建一个文件夹,命名为data如图:三编辑配......
  • MYSQL-sql语句示例
    数据库操作:创建数据库:CREATEDATABASEdatabase_nameCHARACTERSETutf8mb4COLLATEutf8mb4_unicode_ci;删除数据库:DROPDATABASEIFEXISTSdatabase_name;切换数据库:USEdatabase_name;表的管理:创建表:CREATETABLEtable_name(column1datatypeconstraint,colu......
  • Mysql高级sql语句
    1.高级sql语句(进阶查询一)1.1select语法:SELECT"字段"FROM"表名";示例:selectnamefromhome;selectidfromhome2;1.2distinct语法:SELECTDISTINCT"字段"FROM"表名";SELECTDISTINCTStore_NameFROMStore_Info;1.3where有条件......
  • mysql 存储过程
    存储过程实例前提准备创建表createtabletable1(namevarchar(10));createtableMatches(idint(10)auto_incrementnotnull,MATCHNOint(5)notnull,TEAMNOVarchar(6)notnull,PLAYERNOint(7)notnull,WONInt(8)notnull,LOSTvarchar(2),primarykey(......
  • mysql用户权限
    mysql创建用户权限创建用户MySQL中的用户帐号由用户名,以及使用@字符分隔的主机名组成。CREATEuseruser_accountIDENTIFIEDBYpassword;例:createusersuper@localhostIDENTIFIEDBY'123456';//localhost主机连接到MySQL数据库服务器createusersuper@'%'IDENTI......
  • MySQL数据库报 1040 too many connection
    找个是因为超过了最大的连接数你把最大的连接数改一下就可以了  改完之后记得重启mysqlwindows+R cmd进入黑窗口 ......
  • 记录一次mysql5.7oomkill
    集群节点环境[root@master~]#uname-aLinuxmaster5.14.0-229.el9.x86_64启动mysq:5.7镜像会出现oomkill,属于系统镜像问题,解决方法有两个,使用centos7(centos8未测试),或者修改镜像启动命令修改镜像启动命令参考了链接:https://learnku.com/articles/34598大致内容如下MySQL......