标签归档:mysql

Freepbx mysql升级后的问题

SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect integer value: ” for column asterisk.music.random at row 1
File:/var/www/html/admin/modules/music/Music.class.php:135

/etc/mysql/mariadb.conf.d/50-server.cnf

或者/etc/my.cnf.d/server.cnf

在[mysqld]下面


#增加一行 sql_mode=""

然后重启

REF. https://sourceforge.net/p/raspbx/discussion/bugreports/thread/529c2a2e35/

freepbx的mysql错误修复

An exception occurred while executing ‘ALTER TABLE outbound route email CHANGE emailfrom emailfrom VARCHAR(320) DEFAULT ”, CHANGE emailto emailto VARCHAR(320) DEFAULT ”, ADD PRIMARY KEY (route_id)’: SQLSTATE[42S02]: Base table or view not found: 1932 Table ‘asterisk.outbound_route_email‘ doesn’t exist in engine

在linux上查看mysql

#登陆mysql
mysql -u root -p
#输入密码
#1查看所有的数据库,不要忘了后面的分号
show databases;
进入要管理的相应的数据库
use asterisk;
#查看所有的表
show tables;
#查看相应表内的内容
desc tablename;
#记住你需要导出的表的名称
#退出mysql
#下面是导出所有的
mysqldump -u root -p --all-databases > all-databases.sql
#导出其中一个数据,database_name换成在(1)查到的相应的
mysqldump -u root -p database_name > database_name.sql
#不是全部导出,导出其中几个
mysqldump -u root -p --databases db_name1 db_name2 ...  > multi_database.sql
#如果要导出asterisk下的callback这个表
mysqldump -uroot -p asterisk callback > callback.sql
#如果多个表,就在后面继续写
mysqldump -uroot -p -d asterisk callback outbound_route_email > createtab.sql

查看mysql数据库文件保存的位置

mysql> show global variables like "%datadir%";

相应数据库的表,会以表名命名,分别有两个文件pjsip.frm,pjsip.ibd

如果只有一个文件,说明这个表是不完整的。在导入的导出的时候都会报错。

导入表

#进入mysql
#进入数据库
source sql.sql
#正常就会导入进去
desc tablename;
#查看导入的表的内容是否正确。