在系统上是以一个文件夹的形式出现的,你创建了ac数据库,那么在磁盘上就会出现ac的目录,而ac数据库的全局配置则是ac文件夹中的db.opt文件来管理。
mysql的
数据文件
在datadir下,你在数据库中执行
show
variables
like
'%datadir%'就会显示
数据库文件
的路径,你可以找到ac文件夹。
1.
在
MySQL
客户端键入如下命令:
show
global
variables
like
"%datadir%"
2.
MySQL
的数据文件就存放在Data目录。
扩展资料
给定mysql_stmt_init()返回的语句句柄,准备字符串查询指向的SQL语句,并返回状态值。字符串长度应由"length"参量给出。字符串必须包含1条SQL语句。不应为语句添加终结用分号('')或\g。
通过将问号字符"?"嵌入到SQL字符串的恰当位置,应用程序可包含SQL语句中的一个或多个参数标记符。
标记符仅在SQL语句中的特定位置时才是合法的。例如,它可以在INSERT语句的VALUES()列表中(为行指定列值),或与WHERE子句中某列的比较部分(用以指定比较值)。但是,对于ID(例如表名或列名),不允许使用它们,不允许指定二进制 *** 作符(如等于号"=")的 *** 作数。后一个限制是有必要的,原因在于,无法确定参数类型。
一般而言,参数仅在DML(数据 *** 作语言)语句中才是合法的,在DDL(数据定义语言)语句中不合法。执行语句之前,必须使用mysql_stmt_bind_param(),将参数标记符与应用程序变量绑定在一起。
参考来源: https://mariadb.com/kb/en/library/default-data-directory-for-mariadb/
基本 *** 作和MySQL移动是一样的
一般mysql默认的存储目录在 /var/lib/mysql 中
注意文件的权限, 以及用户和用户组都为 mysql , 这个很重要 .
假设我们要将mysql目录移到/home/data_storage下
执行
这里 p 表示把源文件或目录下的所具有的权限一同复制到目标目录或文件, r 表示递归
在[mysqld]下, 修改datadir的值(没有自己加上)
然后, 保存后启动mariadb, 至此, mariadb的迁移已完成 (没成功的继续看下面)
在ubuntu中,有些敏感 *** 作受到了apparmor的限制 ,mysql也受到了限制, 所以要修改这个
加入
然后在启动mysql之前, 重新加载apparmor
移动完mysql目录, 并修改好datadir后, 启动仍可能会遇到如下错误:
除了要检查mysql目录的权限, apparmor配置以外, 还要留意mysql目录的所有父级目录的执行权限. mariadb官方是如下要求的:
This is usually a permission error on the directory in which this file is being written. Ensure that the entire datadir is owned by the user running mysqld, usually mysql. Ensure that directories have the "x" (execute) directory permissions for the owner. Ensure that all the parent directories of the datadir upwards have "x" (execute) permissions for all (user, group, and other).
Once this is checked look at the systemd and selinux documentation below, or apparmor.
MySQL数据库目录下面的db.opt是干什么用的MySQL数据库程序的存放数据目录里的db.opt文件是MySQL程序生成的。
细心的朋友可能会发现有时候在MySQL程序的某些库目录下有个db.opt文件,那这个文件是干什么用的呢?如果你用vi等编辑器打开看的话,内容很简单,是用来记录该库的默认字符集编码和字符集排序规则用的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)