在linux下用sqlite3数据库提示找不到table文件怎么办

在linux下用sqlite3数据库提示找不到table文件怎么办,第1张

sqlite的数据库就是单个文件,数据库的相应驱动是一个dll,根据你的情况,可能是数据库中不存在你要 *** 作的表,要用相应的SQL语句 *** 作游标,进行相应表的创建。如create table user_table (ID,uname,pas)什么的。创建了表,再对表进行 *** 作。

权限问题。,copy份给你!

1.首先要运行一下

比如说我的mysql安装在/opt/mysql下面

#cd

/opt/mysql

#scripts/mysql_install_db

--user=mysql

(确认你有mysql用户)

如果不行,检查你的/opt/mysql(这是我的)下面有没有data目录,正确的做法是先启动一次如果OK,再移data目录到别的地方。

两个方法解决

1.如果你没有修改过my.cnf文件,请修改,然后把添加datadir

[mysqld]

port

=

3306

socket

=

/tmp/mysql.sock

datadir

=

/data/mysql/data

这时候,你在/opt/mysql下面建一个软链接到/etc/my.cnf

#cd

/opt/mysql

#ln

-sf

/etc/my.cnf

my.cnf

2.或者你在/opt/mysql下面建一个data的软链接

#cd

/opt/mysql

#ln

-sf

/data/mysql/data

data

如果还不行,你就得查看你已经注册成服务的mysqld

#cd

/etc/init.d/

#vim

mysqld

一般的默认是安装在/usr/local下面的,所以你要修改这个目录的名称及指向。

再不行,你得查一下

/opt/mysql/data/localhost.err文件报什么错。

再按错误来解决。

我之前是少了一个libstdc++.so.5的库,从别的地方copy了一个就OK了

正确流程如下:

#cd

/opt/mysql

#scripts/mysql_install_db

--user=mysql

成功

#cd

../bin/mysqld_safe

&

//这是运行一个demo

查一下进程树

#ps

aux

|

grep

mysql

//如果有就可以运行

/opt/mysql/support-files/mysql.server

start

//修改一下mysql.server文件,这个脚本文件其实就是init.d/mysqld文件,默认路径在/usr/local下面

成功了就可以用了

/opt/mysql/bin/mysql

愿你早日解决些事。

记得权限的问题,--user=mysql来启动创建初始化table,你的data目录要有写权限。

这是我在linux下命令,跟Ubuntu应该一样!你试试看!

查看当前用户表:list tables

查看数据库定义所有表:list tables for all

查看指定模式表:list tables for schema <schema name>

查看当前用户名为模式表:list tables for schema

查看表结构:describe table <tablename>

创建:create table <schema name>.<table name>(<column name><type>) in <tablespace name>

例如:create table agent.test (id integer, name varchar(10)) in users


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8515585.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存