Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用~/.my.cnf更改默认mysql存储引擎_Mysql_Myisam_My.cnf - Fatal编程技术网

使用~/.my.cnf更改默认mysql存储引擎

使用~/.my.cnf更改默认mysql存储引擎,mysql,myisam,my.cnf,Mysql,Myisam,My.cnf,我正在使用MySQL 5.5,并试图更改默认的存储引擎,仅限我自己使用。我尝试按照我在此处找到的说明在我的主目录中创建.my.cnf文件: 您可以在此处看到我迄今所做的更改: selah@selah-OptiPlex-9020:~$ cat .my.cnf [mysqld] default-storage-engine=MyISAM selah@selah-OptiPlex-9020:~$ sudo /etc/init.d/mysql restart [sudo] password for se

我正在使用MySQL 5.5,并试图更改默认的存储引擎,仅限我自己使用。我尝试按照我在此处找到的说明在我的主目录中创建.my.cnf文件:

您可以在此处看到我迄今所做的更改:

selah@selah-OptiPlex-9020:~$ cat .my.cnf
[mysqld]
default-storage-engine=MyISAM
selah@selah-OptiPlex-9020:~$ sudo /etc/init.d/mysql restart
[sudo] password for selah: 
 * Stopping MySQL database server mysqld                                                                                                  [ OK ] 
 * Starting MySQL database server mysqld                                                                                                  [ OK ] 
 * Checking for tables which need an upgrade, are corrupt or were 
not closed cleanly.
但是MyISAM仍然不是默认值

mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.00 sec)
我怎样才能让它工作

编辑:对于记录,我只是能够通过编辑我的/etc/mysql/my.cnf文件并重新启动我的计算机来实现这一点,只是重新启动进程失败了。但是,我仍然想了解如何仅为我的用户更改此设置

默认存储引擎是服务器设置,而不是连接设置。mysqld服务器不读取用户“~/.my.cnf”,客户端只读取[client]部分,而不读取[mysqld]部分

您可以通过“~/.my.cnf”中[client]部分的init命令进行更改,不过:

init-command="SET default_storage_engine=MYISAM;"

InnoDB是一个很好的默认值。您有哪些要求使MyISAM成为必要的?相比之下,这是一台糟糕的发动机。