centos7下的mysql安装和开机自启动

资料整理,避免下次再浪费时间,待细化:


在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。

1 下载并安装MySQL官方的 Yum Repository
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
之后就开始安装MySQL服务器。

[root@localhost ~]# yum -y install mysql-community-server
这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。

至此MySQL就安装完成了,然后是对MySQL的一些设置。

2 MySQL数据库设置
首先启动MySQL

[root@localhost ~]# systemctl start mysqld.service
查看MySQL运行状态,运行状态如图:

[root@localhost ~]# systemctl status mysqld.service

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

[root@localhost ~]# grep "password" /var/log/mysqld.log

如下命令进入数据库:

[root@localhost ~]# mysql -uroot -p
输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
这里有个问题,新密码设置的时候如果设置的过于简单会报错:

原因是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关:

MySQL完整的初始密码规则可以通过如下命令查看:

复制代码
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 4 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
7 rows in set (0.01 sec)
复制代码
密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:

validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

我的是已经修改过的,初始情况下第一个的值是ON,validate_password_length是8。可以通过如下命令修改:

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
设置之后就是我上面查出来的那几个值了,此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。

但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch
此时才算真的完成了。


关闭防火墙:
[root@localhost system]# systemctl stop firewalld.service
[root@localhost system]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.Fedoraproject.FirewallD1.service.

设置mysql的开机启动:
[root@localhost system]# systemctl enable mysqld
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /usr/lib/systemd/system/mysqld.service.
[root@localhost system]# systemctl list-unit-files | grep mysqld
mysqld.service enabled

取消mysql的开机自启动:
[root@localhost system]# systemctl disable mysqld
Removed symlink /etc/systemd/system/multi-user.target.wants/mysqld.service.
[root@localhost system]# systemctl list-unit-files | grep mysqld
mysqld.service disabled

STM8 bootloader纪要

STM8 bootloader-UM0560

mcu:STM8L051F3P6,属于 STM8L Series low density

bootloder 支持

已经内置bootloader的mcu
bootloader group

没有内置bootloader的mcu

bootloder 执行流程图

bootloader执行流程图:

bootloder 传输设置

ota 同步消息SYNCHR=0x7F

支持传输的外设

从图上看,051F支持UART或者SPI
UART设置:1 start bit, 8 data bit, 1 bit 奇校验 ,1 stop bit
波特率:通过0x7F的传输,自动适配波特率,最大115200,最小4800.

传输回复
串口:1 start bit, 8 data bit, no parity bit, 1 stop bit,波特率自适应

SPI设置
• 8 data bit, MSB first
• Bit rate: Set by the host which acts as a master
• Peripheral set in slave mode with software management of NSS
• Data polarity: CPOL = 0 (SCK to 0 when idle), CPHA = 0 (the first clock transition is the
first data capture edge).

收到命令后,bl回复ACK 0x79

bootloder 外设选择

从资源的角度,我们倾向于使用spi做外设,因为uart可以预留来做用户调试用,但是目前官方提供了uart的串口下载PC客户端,方便测试。所以目前看使用uart作为bl外设可能更方便。这里也就要求选用单片机时,最好是多串口的设备。

bootloder 跳转地址表

关键点检测后,要跳转的地址表:

目前我们可以先考虑实现串口的版本,但是最后还是SPI的更实用。

完整文档:UM0560

通过acme的DNS方式实现letsencrypt通配证书泛证书的自动更新

详细完整参见:
https://github.com/Neilpang/acme.sh/wiki/说明

文章已经讲的很详细了,现就就DNS和通配相关的使用做简要摘录和关键步骤说明

想要实现通配证书,目前dns方式是唯一的方式。

  1. 安装

    curl  https://get.acme.sh | sh
  2. 重定向
    打开 .bashrc,添加 alias acme.sh=~/.acme.sh/acme.sh ,方便命令输入

  3. 生成证书。
    默认dns是需要手动添加域名记录验证归属合法性的,通过dnspod这样的第三方平台 API,我们就可以实现自动验证的功能。

    export DP_Id="1234"
    export DP_Key="sADDsdasdgdsf"
    acme.sh   --issue   --dns dns_dp   -d  *.aa.com

    dnspod的token申请路径:https://www.dnspod.cn/console/user/security

这期间可能提示你需要:

acme.sh --register-account -m aaa@bbb.com

注意,DNS的账号信息,只需要操作一次,系统会自动记录到配置文件,后面直接使用"--dns dns_dp" 就可以。

  1. 证书的安装
    证书默认是在~/.acme.sh/通配域名/目录下的,通过安装可以安装到我们指定的生产环境路径。

注意,下面的命令不会自动创建目录,如果目录不存在,需要手动提前创建。

rsa 密钥:

acme.sh --install-cert -d *.aa.com --key-file /path/domain/privkey.pem --fullchain-file /path/domian/fullchain.pem --reloadcmd "systemctl force-reload nginx.service"

说明:以上两个路径是安装的目的地址,也就是将第3步的证书内容,按照这个命令中的地址,进行安装。

ecc 密钥:

acme.sh --install-cert --ecc -d *.aa.com --key-file /path/domain/privkey.pem --fullchain-file /path/domian/fullchain.pem --reloadcmd "systemctl force-reload nginx.service"

以上相关的操作都会被acme脚本自动记录,并且在证书自动更新的时候会自动执行。

  1. 证书的更新
    完成以上后,acme就会自动帮你更新证书了。

  2. acme.sh本身的自动更新
    开启:acme.sh --upgrade --auto-upgrade
    关闭:acme.sh --upgrade --auto-upgrade 0

  3. acme的卸载
    acme.sh --uninstall

alios vsc 插件错误

点击项目和平台时,VSC提示错误:
ENOENT: no such file or directory, scandir 'C:\Users\xxx.aos\AliOS-Things\board'

很显然是alios-studio插件的系统路径和实际安装的不符。
在VSC中,点击设置,在右侧有"用户设置"和"工作区设置",点击工作区设置,指定对应的路径如下:

{
  "aliosStudio.sdkPath": "xxxxx\\AliOS-Things"
}

phpadmin错误

  1. 配置文件现在需要一个短语密码
    解决:设定 libraries/config.default.php 文件的 $cfg['blowfish_secret'] 参数,参数字符串长度必须在32位以上。
  2. .$cfg[‘TempDir’] (./tmp/) 读取失败且不能建立缓存, phpMyAdmin运行速度将受影响
    解决:在phpadmin的web目录根目录下,创建缓存目录:
    sudo mkdir -m 777 ./tmp

Best espresso machines

Vivamus fringilla euismod pharetra. Proin cursus gravida nunc a placerat. Nunc nec sollicitudin nibh. Sed vel elementum lectus. Nunc nec congue quam, vitae varius massa. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Fusce eu consectetur mi.

 

 

Vestibulum et euismod nulla. Fusce quam nulla, tincidunt ac dignissim porta, facilisis id turpis. Ut viverra pharetra massa, et auctor orci convallis sit amet. Nullam eu vulputate elit. Fusce nunc purus, hendrerit vitae est vitae, feugiat consectetur urna. Praesent eget nisl at nibh tincidunt gravida vitae sit amet nibh.

 

Listening sounds like a ridiculous characteristic for mentoring, but genuinely being invested and interested in people, meeting them for cups of coffee and spending time with people, and using the network I've been very lucky to build up to help others are all things I do to help others.
Sinead Burke

Malesuada vel finibus necDonec eu dolor erat.

Morbi purus augue, varius at enim. Morbi molestie cursus dolor, nec lacinia velit dictum eget. Cras tortor nisi, porttitor eget malesuada ac, vestibulum non justo. Integer vel molestie libero. Quisque eget sagittis enim, ut volutpat velit. Donec purus nisi, pharetra at consequat at, venenatis vel lectus.

Proin viverra consectetur felis, a accumsan felis tincidunt ut. Ut cursus lacus sed pulvinar viverra. Duis eu magna vestibulum risus dignissim condimentum quis sed nulla. Duis iaculis purus vel vestibulum facilisis. Sed gravida viverra dui pulvinar condimentum. Suspendisse eget eros at ipsum pulvinar pellentesque. Etiam ac nibh ut arcu gravida sollicitudin.

Etiam sed commodo libero, vel eleifend augue. Praesent arcu tellus, commodo non pulvinar sed, elementum ac felis. Integer id venenatis mi. Pellentesque ut diam quis enim dapibus semper. Quisque ullamcorper, risus non molestie volutpat, orci odio convallis metus, sed bibendum odio felis eu nunc.

 

How many cup of coffee you should drink per day?

Vivamus fringilla euismod pharetra. Proin cursus gravida nunc a placerat. Nunc nec sollicitudin nibh. Sed vel elementum lectus. Nunc nec congue quam, vitae varius massa. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Fusce eu consectetur mi.

 

 

Vestibulum et euismod nulla. Fusce quam nulla, tincidunt ac dignissim porta, facilisis id turpis. Ut viverra pharetra massa, et auctor orci convallis sit amet. Nullam eu vulputate elit. Fusce nunc purus, hendrerit vitae est vitae, feugiat consectetur urna. Praesent eget nisl at nibh tincidunt gravida vitae sit amet nibh.

 

Listening sounds like a ridiculous characteristic for mentoring, but genuinely being invested and interested in people, meeting them for cups of coffee and spending time with people, and using the network I've been very lucky to build up to help others are all things I do to help others.
Sinead Burke

Malesuada vel finibus necDonec eu dolor erat.

Morbi purus augue, varius at enim. Morbi molestie cursus dolor, nec lacinia velit dictum eget. Cras tortor nisi, porttitor eget malesuada ac, vestibulum non justo. Integer vel molestie libero. Quisque eget sagittis enim, ut volutpat velit. Donec purus nisi, pharetra at consequat at, venenatis vel lectus.

Proin viverra consectetur felis, a accumsan felis tincidunt ut. Ut cursus lacus sed pulvinar viverra. Duis eu magna vestibulum risus dignissim condimentum quis sed nulla. Duis iaculis purus vel vestibulum facilisis. Sed gravida viverra dui pulvinar condimentum. Suspendisse eget eros at ipsum pulvinar pellentesque. Etiam ac nibh ut arcu gravida sollicitudin.

Etiam sed commodo libero, vel eleifend augue. Praesent arcu tellus, commodo non pulvinar sed, elementum ac felis. Integer id venenatis mi. Pellentesque ut diam quis enim dapibus semper. Quisque ullamcorper, risus non molestie volutpat, orci odio convallis metus, sed bibendum odio felis eu nunc.