Django使用MySQL数据库

由于SQLite不支持Git版本控制,所以将Django的默认数据库换到MySQL当中。 开始 修改配置文件 修改settings默认配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } 修改为MySQL的引擎 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'your_db_name', 'USER': 'your_mysql_username', 'PASSWORD': 'your_mysql_password', 'HOST': 'your_mysql_server_ip', 'PORT': 'your_mysql_server_port',…

CentOS7升级Python默认版本到3.7

现在默认的CentOS7的Python版本为2.7.5,但随着官方放弃Python2的时间节点已经到来(查看[这里]),切换到Python3是大势所趋。我选择了3.7,通过软连接的形式,加到bin下,进行调用。 创建一个目录存放Python原始文件:mkdir ./Python3 && cd ./Python3 下载原始Python安装包:wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz 解压:tar -zxvf Python-3.7.0.tgz 创建安装目录: mkdir /usr/local/python3 配置到指定的目录安装:./configure --prefix=/usr/…

通过Crontab定时备份

目地通过Linux下的定时任务Crontab来定期的执行脚本,备份服务器中的MySQL数据。Shell脚本解释#!/bin/sh t=$(date +%Y%m%d%H%M%S); cd /backup/mysql mysqldump -uroot -pyourpassword yourdatabase > yourdatabase.sql tar -czf yourdatabase.${t}.tar.gz yourdatabase.sql rm -r yourdatabase.sql 按照项目使用的db来备份默认备份在/backup/xxx项目/mysql默认的文件格式为xxx项目+14位时间戳(例如:20190709131051)需要删除mysqldump导出的sql文件Crontab使用方法Crontab是Linux内置的一个定时命令,可以帮助我们定期执行一些工作。语法为crontab   [-e   [UserName]|-l   [UserName]|-r…

Screen常用的命令

经常在命令行中执行一些命令的时候,有的是需要在后台执行的,或者有的时候登录在VPS中,退出ssh后,这条命令就自动中断了。这个时候采用Screen的方式就比较好处理。 Screen可以理解成为一个新开一个窗口,每次当你新建一个screen的时候,他就是独立的。可以随时随地的恢复一个状态。 常用的命令 screen -ls #显示当前所有的screen,会有两个状态一个是detach,另外一个是attach,有点像Android中的Fragment的状态一样。 screen -S xxx #创建一个名为xxx的screen screen -r xxx #恢复(或者叫attach一个名为xxx的screen) screen -d xxx #detach某个screen screen -d -r xxx #结束当前的screen,并恢复到xxx的screen 快捷键(在每一个screen下,都可以已ctrl+a开始) ctrl a, k : 终止当前的screen并退出 ctrl a, d :detach当前的screen,但screen中的命令继续在后台执行 ref…

MySQL设置用户访问权限

对于有远程访问MySQL的需求的话,通过MySQL的权限管理,可以设置一个新的用户指定IP访问,指定数据库操作,指定表,这样用最小粒度确保安全。创建新用户可以通过SELECT user,host from mysql.user;查出当前的用户及Host。Host一般为localhost,127.0.0.1,%,固定IP。%的意思是,任意IP都可以。为单独的程序新建一个MySQL用户CREATE USER 'username'%'host' INDENTIFIED BY 'userpassword';即可创建一个新的用户。给该用户设定权限为了保证安全,一般都需要设定的权限最小。比如,定位到某个数据库的某个表,或者只能执行某些SQL操作。GRANT SELECT, INSERT, UPDATE on dbname.tablename to 'username'@'host';上面这个语句的意思是,给某个用户在某个host下的某个数据的某个表的查询,写入,更新权限。这里需要注意的是,这个给权限的语句是叠加的,…