阿里云的简单搭建

徘徊边缘 提交于 2020-01-15 04:21:44
一、jdk版本修改
1、下载jdk1.8 :

wget --no-cookies --no-check-certificate --header “Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie” “http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz”
解压:tar xzf jdk-8u141-linux-x64.tar.gz

2、修改环境变量
#修改配置文件 /etc/profile 在文件底部添加(注意下载的jdk位置)

JAVA_HOME=/usr/jdk1.8.0_141
JRE_HOME=/usr/jdk1.8.0_141/jre
CLASS_PATH=.:JAVAHOME/lib/dt.jar:JAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar:JREHOME/libPATH=JRE_HOME/lib PATH=PATH:JAVAHOME/bin:JAVA_HOME/bin:JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

3、保存刷新profile文件

source /etc/profile

二、mysql配置
1、创建用户

1、在/root/Readme中找到mysql的初始密码
2、登录mysql,use mysql
3、创建新用户: create user “username”@"%" identified by “password”;
如果报错:Your password does not satisfy the current policy requirements
就设置密码等级:

 set global validate_password_policy=0;

4、修改权限 :grant all privileges on . to “username”@"%" identified by “password”;
5、查看mysql的字符集:
show variables like “%char%”;
在这里插入图片描述
查看字符集是否为utf8mb4,这个字符集是在mysql5.5之后更新的,此字符集主要是为了解决了复杂的中文字符,采用了unicode的编码,会在字段长度预留300字节,这会导致之前键值过长的错误,如下:
在这里插入图片描述
而之前采用的字符集utf8会节约硬盘空间较比与utf8mb4,而如果采用utf-8的字符集会在一些特殊的中文字符写入后报异常。

utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。如果直接往采用utf-8编码的数据库中插入表情数据,java程序中将报SQL异常:
java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x92\x94’ for column ‘name’ at row 1
utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。
采用utf8mb4编码的好处是:存储与获取数据的时候,不用再考虑表情字符的编码与解码问题。

修改字符集:

#更改数据库编码为utf8mb4:
ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

5、如何在utf8mb4字符集下使用utf8的字符集
是在创建数据库时,指定字符集编码为utf8
create database “xxxx” CHARACTER SET “UTF8”;

6、mysql 不同版本的字符集不同,默认字符集和默认的引擎不同

可以在/etc/my.cnf文件中进行修改
default-storage-engine = INNODB #定义存储引擎
character-set-server = utf8 #设置字符集为utf8
default-character-set=utf8

通过命令修改:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!