Database
centos7开启sshd多端口登录及修改端口
星期三, 十二月 4th, 2019 | Database, linux | 2 Comments
0.不知道怎么回事 一台国外的机器的ssh的22端口,时常无法ssh连接,因此多加个端口来备用
1.编辑配置文件打开Port=22 或者修改此端口
vi /etc/ssh/sshd_config
Port 22
Port 1022
2.重启sshd服务
systemctl restart sshd
3.查看服务启动情况
netstat -lntp |
4.防火墙放行
iptables -A INPUT -p tcp --dport 1022 -j ACCEPT |
5.使用xshell等连接即可
可以同时使用22及1022的端口进行sshd连接服务器了
springboot 使用druid连接池及使用原JDBCTemplate配置
星期日, 六月 30th, 2019 | Database, JAVA-and-J2EE | 没有评论
0.springboot 版本说明2.1.4.RELEASE
1.起因是部门架构部说druid在高并发下和以前的框架集成包有冲突
会造成连接池无法缓存,连接数暴涨,达到最大连接数,从而造成服务异常
2.我没有实际测试,也不好直接下结论,姑且把常用的spring boot 集成的druid配置如下:
<dependency> <groupid>org.springframework</groupid> <artifactid>spring-jdbc</artifactid> </dependency> <dependency> <groupid>com.alibaba</groupid> <artifactid>druid-spring-boot-starter</artifactid> <version>1.1.10</version> </dependency> |
azkaban-web-server 邮件配置遭遇Connecting to SMTP server failed
星期三, 六月 27th, 2018 | Database, JAVA-and-J2EE, 大数据 | 2 Comments
azkaban-web-server 邮件配置遭遇Connecting to SMTP server failed
0.先说下使用的版本azkaban-web-server-3.45.0-10使用jdk1.8.151编译
1.启用azkaban的邮件配置在 azkaban.properties中定义发送邮箱
mail.sender=xx@qq.com mail.host=smtp.exmail.qq.com mail.user=xx@qq.com mail.port=465 mail.password=xxxxxx #job.failure.email=xx@qq.com #job.success.email=xx@qq.com mail.tls=true |
2.配置job文件里配置接收邮箱地址
#file.job type=command command=sh /usr/local/bg/files/test.sh working.dir=/usr/local/bg/files/job/working notify.emails=xx@qq.com failure.emails=xx@qq.com success.emails=xx@qq.com |
3.遭遇错误如下
ERROR [EmailMessage] [Azkaban] Connecting to SMTP server failed, attempt: 0 javax.mail.MessagingException: Exception reading response; nested exception is: java.net.SocketTimeoutException: Read timed out at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:2210) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1950) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:642) at javax.mail.Service.connect(Service.java:295) at azkaban.utils.EmailMessage.connectToSMTPServer(EmailMessage.java:226) at azkaban.utils.EmailMessage.retryConnectToSMTPServer(EmailMessage.java:236) at azkaban.utils.EmailMessage.sendEmail(EmailMessage.java:219) at azkaban.utils.Emailer.sendSuccessEmail(Emailer.java:231) |
4.解决方式需要修改源码并重新编译之 重新编译azkaban.utils.EmailMessage即可,
› Continue reading
支持emoji图标直接存储到数据库,更改MySQL数据库的编码为utf8mb4
星期一, 十月 23rd, 2017 | Database, JAVA-and-J2EE | 一条评论
随着emoji的频繁使用,对接微信后会带名字的emoji的很多,现在都需要支持.
utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。
如果直接往采用utf-8编码的数据库中插入表情数据,java程序中将报SQL异常:
1 2 3 4 5 6 7 8 9 | java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x92\x94’ for column ‘name’ at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620) at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1662) at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1581) |
可以对4字节的字符进行编码存储,然后取出来的时候,再进行解码。但是这样做会使得任何使用该字符的地方都要进行编码与解码。
utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。
采用utf8mb4编码的好处是:存储与获取数据的时候,不用再考虑表情字符的编码与解码问题。
更改数据库的编码为utf8mb4:
1. MySQL的版本
utf8mb4的最低mysql版本支持版本为5.5.3+,若不是,请升级到较新版本。
2. MySQL驱动
5.1.34可用,最低不能低于5.1.13
3.修改MySQL配置文件
my.cnf一般在/etc/my.cnf位置。找到后请在以下三部分里添加如下内容:
1 2 3 4 5 6 7 8 9 10 | [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4' [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 |
4. 重启数据库,检查变量
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%'; Variable_name Value character_set_client utf8mb4 character_set_connection utf8mb4 character_set_database utf8mb4 character_set_filesystem binary character_set_results utf8mb4 character_set_server utf8mb4 character_set_system utf8 collation_connection utf8mb4_unicode_ci collation_database utf8mb4_unicode_ci collation_server utf8mb4_unicode_ci collation_connection 、collation_database 、collation_server是什么没关系。 但必须保证 系统变量 描述 character_set_client (客户端来源数据使用的字符集) character_set_connection (连接层字符集) character_set_database (当前选中数据库的默认字符集) character_set_results (查询结果字符集) character_set_server (默认的内部操作字符集) 这几个变量必须是utf8mb4。 |
5. 数据库连接的配置
数据库连接参数中:
characterEncoding=utf8会被自动识别为utf8mb4,也可以不加这个参数,会自动检测。
而autoReconnect=true是必须加上的。
6. 将数据库和已经建好的表也转换成utf8mb4
更改数据库编码:ALTER DATABASE xxdb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
更改表编码:ALTER TABLE TABLE_NAME CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
如有必要,还可以更改列的编码
linux每天定时备份MySQL数据库并删除五天前的备份文件
星期五, 三月 17th, 2017 | Database, JAVA-and-J2EE | 没有评论
MYSQL定期备份常用脚本如下:
1. mkdir -p /bak/mysqlbak 2.vi bakmysql.sh 内容如下 #!/bin/bash # Name:bakmysql.sh # This is a ShellScript For Auto DB Backup and Delete old Backup # backupdir=/bak/mysqlbak time=` date +%Y%m%d%H ` /usr/local/webserver/mysql/bin/mysqldump -root-pxxx -S /tmp/mysql.sock xx| gzip > $backupdir/xx_$time.sql.gz # find $backupdir -name "xx_*.sql.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1 |
MySQL表类型和存储引擎的修改遭遇版本不一致
星期五, 七月 25th, 2014 | Database, JAVA-and-J2EE | 没有评论
使用的是老版本的mysql客户端Navicate 8 ,mysql 服务端用的是mysql5.6的版本,在修改版本引擎的时候出现版本不对;
mysql error ‘TYPE=MyISAM’
解决办法:
Replace
TYPE=MyISAM
with
ENGINE=MyISAM
The problem was “TYPE=MyISAM” which should be “ENGINE=MyISAM” as per MySQL version updates – a simple search / replace has fix it.
附 修改表引擎sql:alter table db.user engine =MyISAM;
mysqldump导出部分数据和insert into 复制部分数据
星期二, 六月 10th, 2014 | Database, linux | 没有评论
今天想导出部分数据找了半天终于找到对应的几个方法
首先看下字符集,省的导出的时候是乱码
1.用命令
mysql> SHOW VARIABLES LIKE "character_set%"; |
根据对应的字符集value决定采用导出字符latin1 还是utf8
2.采用 –where的方式导出
mysqldump -uroot -p123456 --default-character-set=latin1 i5a6 i5a6_data --where=" id < 100" > bki5a6.sql |
3.采用创建新表结构和原来表相同复制部分数据的形式再全部导出新表数据即可
INSERT INTO Table2(field1,field2,...) SELECT value1,value2,... FROM Table1 |
涉及更多 mysql备份导入导出说明(二进制导出等) 参见 ://www.pomelolee.com/1088.html
完毕,感觉采用mysqldump 导出的时候更省事,流着以后用的时候好直接翻阅
mysql备份导入导出说明和对应的shell脚本
星期六, 十二月 22nd, 2012 | Database | 没有评论
1.导出整个数据库(–hex-blob 为有blob数据做的,防止乱码和导入失败用)
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
1 | mysqldump -u root -p --default-character-set=gbk --hex-blob i5a6 > i5a6.sql |
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
1 | mysqldump -u root -p i5a6 users> i5a6.sql |
3.导出一个数据库结构
1 | mysqldump -u root -p -d --add-drop-table i5a6 >d:/i5a6.sql |
-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
1 | mysql>source d:/i5a6.sql |
MySQL Installer 5.5.29在win7下安装失败解决
星期六, 十二月 22nd, 2012 | Database | 没有评论
今天下载了最新版的mysql,安装的时候遭遇 Last error: unable to configure service,在最后配置的时候出错.
几次三番都是一样,端口3306肯定是没有占用,系统也从来没有装过mysql,很是诡异.
最终的解决之法居然是换个安装目录,本人前次是安装在 D:/soft/db换成D:/db下居然好了,难道和/s有关???
如下步骤成功安装。
1.首先卸载没有成功安装的MYSQL的一系列东东
2.清理下注册表,cmd下运行 regedit 后-F3-搜索你的安装路径,我的是:D:/soft/db.删除所有能找到的键或者键值.(蛮多的)
3.使用netstat -na 确保3306端口未被占用,换个端口应该也行,我的3306没有用
4.更换安装目录为D:/db
解决远程连接mysql速度慢方法
星期日, 九月 30th, 2012 | Database, php | 没有评论
换个了mysql和 代码不在同一个机器上,开启远程连接mysql发现连接的速度好慢,总要加上加载网页的要2-3秒的时间,无法忍受;
在网上找了下原因,终于解决,方法还是挺简单的 .
在my.ini或者my.cnf 文件 的 [mysqld]处添加skip-name-resolve 重启即可
主要原因 是去跳过dns解析
1 2 3 4 5 | [mysqld] #dns cancel skip-name-resolve #grant cancel no advocate (不提倡,此处跳过权限检查,即使更快) skip-grant-tables |
注意:1.skip-name-resolve 是禁用dns解析,可以大幅提升远程连接速度,副作用是不能使用 mysql的授权表中就不能使用主机名了,只能使用IP
2.对于要使用localhost的本机用户 要开启 127.0.0.1 给对应的用户权限,否则帐号无法连接,
本人的 root用户只开了localhost 的时候,发现不能连接上phpmyadmin,而后添加127.0.0.1的权限后,就一切正常了
3.skip-grant-tables 为跳过用户的对应的权限设置,即所有用户都是root权限,在特定的情况下使用吧.
Search
相关文章
热门文章
最新文章
文章分类
- ajax (9)
- algorithm-learn (2)
- Android (6)
- as (3)
- computer (55)
- Database (29)
- disucz (4)
- enterprise (1)
- erlang (2)
- flash (4)
- golang (3)
- html5 (18)
- ios (4)
- JAVA-and-J2EE (158)
- linux (123)
- mac (6)
- movie-music (11)
- pagemaker (35)
- php (50)
- spring-boot (2)
- Synology群晖 (2)
- Uncategorized (6)
- unity (1)
- webgame (15)
- wordpress (33)
- work-other (1)
- 体味生活 (40)
- 大数据 (4)
- 游戏开发 (9)
- 爱上海 (19)
- 读书 (4)
- 软件 (3)