Swift Perfect 服务器配置(Ubuntu16.0.4 主机、虚拟机)
Mac 开发环境
brew install mysql@5.7 && brew link mysql@5.7 --force
mysql.server start
mysql_secure_installation mysql -uroot -p (默认密码为空,直接回车)
alter user 'root'@'localhost' identified by '新密码';(MySQL 5.7. and later)
Ubuntu 16.0.4 Swift环境配置 (下载对应环境 https://swift.org/download/ Toolchain)
#.bashrc export SWIFT_HOME=/opt/swift
export PATH=$SWIFT_HOME/usr/bin:$PATH # source .bashrc
sudo apt-get install mysql-server mysql-client libmysqlclient-dev clang libcurl3 openssl libssl-dev uuid-dev libpython2.7-dev supervisor pkg-config libcurl4-openssl-dev
Ubuntu 16.0.4 MySQL数据库配置
基础命令:service mysql restart | service mysql start | service mysql stop
sudo mysql_secure_installation
配置项较多,如下所示:
#
VALIDATE PASSWORD PLUGIN can be used to test passwords...
Press y|Y for Yes, any other key for No: N (我的选项) #
Please set the password for root here...
New password: (输入密码)
Re-enter new password: (重复输入) #
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them...
Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (我的选项) #
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network...
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y (我的选项) #
By default, MySQL comes with a database named 'test' that
anyone can access...
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (我的选项) #
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y (我的选项)
检查mysql服务状态:
systemctl status mysql.service
显示如下结果说明mysql服务是正常的:
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
Active: active (running) since Tue -- :: CST; 13min ago
Main PID: (mysqld)
Tasks: (limit: )
CGroup: /system.slice/mysql.service
└─ /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pi May :: fileplay-ecs- systemd[]: Starting MySQL Community Server...
May :: fileplay-ecs- systemd[]: Started MySQL Community Server.
在Ubuntu下MySQL缺省是只允许本地访问的,使用workbench连接工具是连不上的;
如果你要其他机器也能够访问的话,那么需要改变/etc/mysql/my.cnf配置文件;
首先用根用户进入:直接回车
sudo mysql -uroot -p
mysql> use mysql;
mysql> flush privileges;
以root进入mysql后也可用命令给root设置密码:
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "";
新建数据库和用户
用root用户新建数据和用作远程访问的用户
## 创建数据库weixx
CREATE DATABASE weixx;
## 创建用户wxx(密码654321) 并赋予其weixx数据库的所有权限
GRANT ALL PRIVILEGES ON weixx.* TO wxx@localhost IDENTIFIED BY "";
进行远程访问或控制配置
## 允许wxx用户可以从任意机器上登入mysql
GRANT ALL PRIVILEGES ON weixx.* TO wxx@"%" IDENTIFIED BY "";
$sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
这里我们注释掉这一行 #bind-address = 127.0.0.1
重启mysql
service mysql restart
mysql增大超时时间(24小时,需重启)
interactive_timeout=
wait_timeout=
mysql插入数据支持中文
#
[client]
default-character-set=utf8 [mysql]
no-auto-rehash
default-character-set=utf8 [mysqld]
character-set-server=utf8
init_connect='SET NAMES utf8'
Mysql频繁出现 Mysql mysql lost connection to server during query(同时解决设置utf8后,异端无法用utf8查看数据库【中文乱码】)
[mysqld]
skip-name-resolve
Supervisor让服务器项目后台运行
apt-get install supervisor #没有/etc/supervisor/supervisord.conf文件,可按此方法生成 echo_supervisord_conf > /etc/supervisor/supervisord.conf
#修改supervisor配置文件 /etc/supervisor/supervisord.conf #移至文件内容结尾 去掉 [include] 前面;
files = /etc/supervisor/conf.d/*.conf
# script.sh 执行脚本,进入代码路径,执行命令 cd /root/Code/PerfectTemplate
.build/debug/PerfectTemplate
# cd /etc/supervisor/conf.d, 创建并编辑 vim swiftServer.conf, swiftServer是我的文件名和program名
# ; 一定一定不能少 [program:swiftServer] ; // program name
file=/tmp/supervisor.sock ;
command=sh script.sh ; // script name
process_name=%(program_name)s ;
directory=/opt ; // script path
autorestart=unexpected ; //当进程意外被kill或出现异常时,Supervisor会自动重启该进程。
user=root ; // user name
[supervisord]
[supervisorctl]
输入supervisord -c /etc/supervisord.conf让你刚刚的配置生效.
输入supervisorctl start swiftServer启动并后台运行
输入supervisorctl status查询状态
supervisor 自启动
创建/usr/lib/systemd/system/supervisord.service文件;
写入:
# dservice for systemd (CentOS 7.0+)
# by ET-CS (https://github.com/ET-CS)
[Unit]
Description=Supervisor daemon
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
systemctl enable supervisord
验证一下是否为开机启动:systemctl is-enabled supervisord
supervisor 定期启动应用
Swift Perfect 服务器配置(Ubuntu16.0.4 主机、虚拟机)的更多相关文章
- 记录一下使用Ubuntu16.0.4配置和使用docker registry
h1, h2, h3, h4, h5, h6, p, blockquote { margin: 5px; padding: 5; } body { font-family: "Helveti ...
- VirtualBox 配置虚拟网卡(桥接),实现主机-虚拟机网络互通
记录下VirtualBox 配置虚拟网卡(桥接),实现主机-虚拟机网络互通过程,网上搜出来的比较乱,讲的不明不白,因此根据自己弄过一次,确认可行的方式,做个备份,方便日后查阅. 环境: 在Oracle ...
- VMware 无法连接虚拟设备ide1:0,主机上没有相对应的设备,您 要在每次开启此虚拟机时都尝试连接此虚拟设备吗?
无法连接虚拟设备ide1:0,主机上没有相对应的设备,您 要在每次开启此虚拟机时都尝试连接此虚拟设备吗? 运行VMware,出现以上错误. ide1:0一般是虚拟机的光驱,配置默认选项是“使用物理驱动 ...
- #Ubuntu16.0.4 LTS 安装RabbitMQ
1.ubuntu下安装配置rabbitmq-server服务器环境:ubuntu16.0.4(向下兼容14.0.4)软件版本:RabbitMQ 3.7.5 .Erlang 20.1.7参考文档:htt ...
- Linux系统下安装Angular2开发环境(Ubuntu16.0和deepin)
说明下,以下过程都是在ubuntu16.0系统下,win系统环境下的安装过程更简单,基本上可以仿效此环境来,除了不用配置系统命令(win下自动可以),node安装是exe程序,一键安装.另外,这里面像 ...
- 主机 & 虚拟机 & 开发板 三者的恩爱情仇
# 主机 & 虚拟机 & 开发板 > 三者网络连通性,使用ping命令检测 @ Bridge 模式 ## 主机 & 虚拟机 主机与虚拟机相当于一个网络里的两台主机,都有各 ...
- 虚拟机ubuntu16.0 安装 mysql 主机配置访问
在bantu服务器中安装如下命令 sudo apt-get install mysql-server sudo apt-get install mysql-client安装成功之后 进入配置文件 ...
- (转载)虚拟机出现无法连接虚拟设备sata0:0,因为主机上没有相应设备
虚拟主机需要镜像文件, 如果是拷贝的虚拟机,还需要桥接联网的话,更改mac地址,
- 使用Azure的GPU系列虚拟机Ubuntu-16.0.4安装GPU驱动并使用Tensorflow-GPU的过程。
1.source activate python362.source activate tensorflow-gpu3.pip install tensorflow-gpu(提示安装的这个版本:ten ...
随机推荐
- 14.VUE学习之-v-if v-else-if语法在网站注册中的实际应用讲解
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...
- Python 枚举类源码解析
1. EnumMeta 元类编程,生成类的类,可以动态生成类. 用法: type(name, bases, dict) name -> 类名: str bases -> 基类: tuple ...
- Python之路-基础数据类型之字符串
字符串类型 字符串是不可变的数据类型 索引(下标) 我们在日常生活中会遇到很多类似的情况,例如吃饭排队叫号,在学校时会有学号,工作时会有工号,这些就是一种能保证唯一准确的手段,在计算机中也是一样,它就 ...
- L1-039 古风排版 (20 分)
L1-039 古风排版 (20 分) 中国的古人写文字,是从右向左竖向排版的.本题就请你编写程序,把一段文字按古风排版. 输入格式: 输入在第一行给出一个正整数N(<),是每一列的字符数.第 ...
- pyautogui 模块学习
在日常实施中,我们用控件对大部分的网页和客户端都能进行拾取操作.但是仍有一小部分的应用无法进行操作.这里我常用到 pyautogui 这个模块.下面做个分享. Python 的 pyautogui 模 ...
- 4 Template层- HTML转义
1.HTML转义 Django对字符串进行自动HTML转义,如在模板中输出如下值: 视图代码: def index(request): return render(request, 'temtest/ ...
- MapReduce实现单词统计
开发工具:IDEA mapreduce实现思路: Map阶段: a) 从HDFS的源数据文件中逐行读取数据 b) 将每一行数据切分出单词 c) 为每一个单词构造一个键值对(单词,1) d) 将键值对 ...
- CART树 python小样例
决策树不断将数据切分成小数据集,直到所有目标变量完全相同,或者数据不能再切分为止,决策时是一种贪心算法,它要在给定的时间内做出最佳选择,但并不关心能否达到最优 树回归 优点:可以对复杂和非线性的数据建 ...
- js数据类型的检测总结,附面试题--封装一个函数,输入任意,输出他的类型
一.javascript 中有几种类型的值 1.基本数据类型 : 包括 Undefined.Null.Boolean.Number.String.Symbol (ES6 新增,表示独一无二的值) 特点 ...
- Vue声明渲染以及axios实例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...