标签: my.cnf

42
推荐指数
2
解决办法
5万
查看次数

MySql - 为实时数据库更改 innodb_file_per_table

我有一个很大的 MySql DB (150GB),直到现在我才注意到innodb_file_per_table设置为off导致整个数据库托管在一个文件 ( ibdata1) 上。我想激活innodb_file_per_table并让它追溯地将数据库分成几个文件,最好的方法是什么?

mysql innodb my.cnf

20
推荐指数
2
解决办法
4万
查看次数

如何让 MySQL 客户端从 mylogin.cnf 读取密码?

我正在尝试使 mysql 客户端连接到 mysql 服务器,而无需以交互方式提供密码。采取的步骤:

1)首先创建一个mylogin.cnf文件

$ mysql_config_editor set --user=<user> --password --host=<host>
Enter password:
Run Code Online (Sandbox Code Playgroud)

2)文件创建成功:

$ ls -la .mylogin.cnf
-rw-------. 1 urmt urmt  136 Dec 19 11:01 .mylogin.cnf
$ mysql_config_editor print --all
[client]
user = <user>
password = *****
host = <host>
Run Code Online (Sandbox Code Playgroud)

3)使用mysql客户端连接

$ mysql <dbname>
ERROR 1045 (28000): Access denied for user '<user>'@'<host>' (using password: NO)
Run Code Online (Sandbox Code Playgroud)

某处是否有默认值/配置使客户端忽略 mylogin.cnf 中的密码?从文件中正确读取了用户和主机属性。

如果我在命令行上提供密码,我就可以正常连接:

$ mysql -p <dbname>
Enter password: 
Reading table information...
...
mysql> 
Run Code Online (Sandbox Code Playgroud)

MySQL 客户端版本为 5.6.22,MySQL Server 版本为 5.6.22,均在 Oracle Linux …

mysql my.cnf mysql-5.6 password

15
推荐指数
3
解决办法
2万
查看次数

如何在 MySQL 上配置全局字符集

我试图通过my.cnf更改我们的 MySQL 的字符集,但失败了。我添加了下面列出的字符集设置:

# The MySQL server
[mysqld]
port            = 3306
socket          = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

# ------------- MYSQL CHARSETS --------------
character_set_system = utf8
character_set_server = utf8
character_set_results = utf8
character_set_database = utf8
character_set_connection = utf8
character_set_client = utf8

collation_connection = utf8_general_ci
collation_database = utf8_general_ci
collation_server = utf8_general_ci
Run Code Online (Sandbox Code Playgroud)

当我启用这些时,MySQL 无法启动。我怎样才能确保一切都默认为 utf8 - 总是?

更新

仍然有一些地方在成为 …

mysql my.cnf

12
推荐指数
1
解决办法
8万
查看次数

MySQL:my.cnf 中的绑定地址 0.0.0.0 不起作用?

我是 mysql 的新手。我想使用我想要的任何 ip 连接到 mysql 服务器。我读到我所要做的就是将行 bind-address = 0.0.0.0 添加到 my.cnf 文件中。这就是我所做的。我重新启动了 mysql 服务器,然后从命令行对其进行了测试。

mysql -uroot -p'*password*' -h 127.0.0.1 --> Works
mysql -uroot -p'*password*' -h 192.168.2.4 (local ip address) --->
ERROR 1045 (28000): Access denied for user 'root'@'mguru.lnx.gr' (using password: YES)
Run Code Online (Sandbox Code Playgroud)

您可以在 my.cnf 文件中看到 mysqld 部分的以下部分

[mysqld]
user = mysql
port=3306
socket          = /opt/lampp/var/mysql/mysql.sock
skip-external-locking
key_buffer = 16M

max_allowed_packet = 1M

table_open_cache = 64

sort_buffer_size = 512K

net_buffer_length = 8K

read_buffer_size = 256K

read_rnd_buffer_size = 512K

myisam_sort_buffer_size = 8M …
Run Code Online (Sandbox Code Playgroud)

mysql my.cnf

12
推荐指数
1
解决办法
10万
查看次数

MySQL 5.1 InnoDB 配置/24GB RAM - 双至强高负载

我正在运行一个 facebook 应用程序,目前有 300 - 600 个并发用户(并且还在增长)。为了让硬件为增长做好准备,我将 i7 / 12gb ram / 2x 80gb intel x25 ssd(debian 5.0 / mysql 5.0 / 64bit)更改为 bi-xeon / 24gb ram / 2x 120gb intel 320 ssd /mysql . 64 位)。

现在我面临的问题是性能比“小盒子”差。在两台服务器上,我一直在使用 nginx/php fcgi 来提供内容。

我只使用 innodb,读取/写入大约 65%/35%。大约 800 - 1000 qps,但所有查询都很简单,永远不会加入超过 1 个额外的表。所有索引都已设置,并且没有单独的查询记录在慢日志中(> 2 秒)。目前我有大约 400MB 的数据(大约 1GB 的索引)预计它每个月都会翻一番。

我很喜欢每个可以给我一个提示的人,他们应该改变什么才能让它运行得更顺畅。

i7盒子上的旧配置是这样的(混合myisam / innodb),在800+用户下表现相当不错。

旧的my.cnf

   key_buffer              = 3000M
   max_allowed_packet      = 128M
   thread_stack            = 192K
   thread_cache_size       = 8
   max_connections        = 400
   table_cache            = 8000
   thread_concurrency …
Run Code Online (Sandbox Code Playgroud)

mysql innodb performance my.cnf

10
推荐指数
1
解决办法
2万
查看次数

在 mysql 中启用 LOAD DATA LOCAL INFILE

LOAD DATA LOCAL INFILE默认情况下不启用。通常,它应该通过放置local-infile=1my.cnf. 但它不适用于所有安装。根据我的经验,它适用于 Debian 7,但不适用于 Debian 7 minimum,尽管这两个安装都来自同一个预编译的 deb 包。两者都在 OpenVZ VPS 上。

如何调试为什么local-infile=1对安装不起作用,以及如何安全激活LOAD DATA LOCAL INFILE

mysql linux my.cnf configuration mysql-5.5

10
推荐指数
1
解决办法
8万
查看次数

如何在 /etc/my.cnf 文件中将 binlog-format=ROW 设为启动默认值?

我可以运行查询SET GLOBAL binlog_format = 'ROW'并且它适用于该会话。

停止并重新启动 MySQL 后,如何使此设置保持不变?

注意:我使用的是 MySQL 5.5.19 版本(使用 Moodle),我刚刚从 MyISAM 升级到 InnoDB,因此需要这个新设置。

我曾尝试将这两个命令(单独)添加到 my.cnf 中:binlog-format=ROWbinlog_format=ROW,但都不起作用。每次更改 my.cnf 时,我都会停止并重新启动 MySQL。

我在没有设置的情况下得到的错误是邪恶的错误消息:

调试信息:无法执行语句:无法写入二进制日志,因为 BINLOG_FORMAT = STATEMENT 并且至少一个表使用仅限于基于行的日志记录的存储引擎。当事务隔离级别为 READ COMMITTED 或 READ UNCOMMITTED 时,InnoDB 仅限于行日志记录。

mysql innodb my.cnf binlog

9
推荐指数
1
解决办法
2万
查看次数

MySQL wait_timeout 和 connect_timeout 的区别

我有一个my.cnf文件。在这里面我看wait_timeout还有connect_timeout。这2个有什么区别?

mysql my.cnf

9
推荐指数
1
解决办法
3万
查看次数

重新加载 MySQL my.cnf 更改

您是否必须重新启动 MySQL 才能编辑更改?或者您可以即时编辑它们并重新启动 MySQL 或在 MySQL 内部进行更改?

该服务器运行着 100 多个处于活动状态的网站,除非必须,否则我真的不想关闭 mysql 以重新启动。

mysql my.cnf

8
推荐指数
1
解决办法
2万
查看次数