分类
技术

mysql 列的数据操作

合并2列或n列的数据到一个新的列:
UPDATE table1 SET c_new = CONCAT(c1,c2,c3);

将不同时间的数据重新排列,只取最新时间的数据
例:表table里的数据:id,num,update_date
SELECT id,num FROM table t1 where not exists(select id from table where update_date > t1.update_date and t1.id = id) ORDER BY id;

将table2的一列数据(字段data)插入到table1中:
1、先在table1中插入新的字段new_data
2、update table1 inner join (select data, id from table2)tmp on table1.id=tmp.id set table1.new_data=tmp.data;

分类
技术

phpmyadmin不能登录root的 问题

mysql5.7版本,默认root禁止通过phpmyadmin使用密码登录的。

所以,新装完MySQL和phpmyadmin以后,如果使用root登录,会出现以下提示信息:

最近简单的解决方法就是在服务器命令行下直接操作新增一个完全权限的账户:

分类
技术

Ubuntu Server 16.04 + PHP 7.0 + Apache2 + MySQL 5.7内存不断增大甚至占满的问题

新弄了台VPS,环境是Ubuntu Server 16.04 + PHP 7.0 + Apache2 + MySQL 5.7。
服务器内存是1G,发现mysql启动后不久内存就越来越高,访问网页不时出现500错误。重启mysql后就正常了,经过排查。解决办法如下。
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf 配置文件的 [mysqld] 字段末尾添加一句:
performance_schema = off
就OK了。
服务器内存虽然占用仍然很高90%左右,但是mysql的占用不超过60%(1G内存)。并且网页再没出现过500错误了。