当我试图使用phpmyadmin向表中插入记录时它给了我
#1036 - Table 'sch_portfolio' is read only
Run Code Online (Sandbox Code Playgroud)
我在一些文章中看到他们说如果这个表的所有者是mysql以外的东西,就会发生这种情况.所以我将所有者设置为mysql并重新启动服务器.我仍然得到同样的错误.任何帮助将非常感激.提前致谢
drwxrwxrwx 2 mysql mysql 4096 Jul 13 15:27 schooltap
Run Code Online (Sandbox Code Playgroud)
Gho*_*man 11
一个人需要超级用户权限来执行此操作,最常见的是sudo用于实现此目的.
按顺序也改变文件的所有者.
sudo chown -R mysql:mysql /var/lib/mysql
Run Code Online (Sandbox Code Playgroud)
重新启动Mysql以进行更改
sudo service mysql restart
Run Code Online (Sandbox Code Playgroud)
谁拥有sch_portfolio,他们在哪个组,应该是mysql:mysql.你还需要重新启动mysql才能使更改生效
还要检查当前登录的用户是否具有GRANT访问权限
MySQL服务器正在运行,user mysql而不是我登录的用户.为了使它能够访问仅具有用户权限的文件,它们必须由用户拥有,‘mysql’因为这是服务器正在运行的内容.确保mysql使用的文件夹和文件属于用户'mysql'.这些文件位于/var/lib/mysql目录中.目录本身也应该属于‘mysql’.
小智 5
据我所知,这是因为存储引擎。如果select storage engine as MRG_MYISAM这只会使您的表变得唯一readable,则无法插入数据。所以,select myisam as storage engine..