首页 > 代码库 > Linux 下没有 my.cnf 文件的解决方式,完全是我自己整的,好多教程都是瞎扯的 (zhuan)
Linux 下没有 my.cnf 文件的解决方式,完全是我自己整的,好多教程都是瞎扯的 (zhuan)
http://blog.csdn.net/jspping/article/details/40400691?utm_source=tuicool&utm_medium=referral
******************************************************************************
我看过好多关于Linux下没有my.cnf的博客,都是什么rmp安装没有my.cnf文件啊,然后什么两个方法啊,我就无语了,大家要是知道就不会查资料了,你们敢不敢负责点?说详细点?有的说从 /usr/share/MySQL 里复制一个.cnf文件到 /etc 下,有用吗?配置文件资料不给别人,复制个毛线?复制谁都会!
my.cnf 配置文件:
- # For advice on how to change settings please see
- # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
- # *** DO NOT EDIT THIS FILE. It‘s a template which will be copied to the
- # *** default location during install, and will be replaced if you
- # *** upgrade to a newer version of MySQL.
- [mysqld]
- #innodb
- # Remove leading
- # and set to the amount of RAM for the most important data
- # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
- innodb_buffer_pool_size = 4000M
- innodb_additional_mem_pool_size=60M
- innodb_data_home_dir=
- innodb_date_file_path=ibdata1:20M:autoextend
- innodb_log_group_home_dir=/var/log/innodb_log
- innodb_log_files_in_group=2
- innodb_log_file_size=30M
- innodb_log_buffer_size=3M
- innodb_doublewrite=ON
- innodb_open_file=2000
- innodb_file_per_table=ON
- innodb_max_dirty_page_pct=50
- back_log=80
- interactive_timeout=3600
- key_buffer_size=10M
- max_allow_packet=40440
- max_connections=1000
- max_tmp_tables=60
- query_cache_size=10M
- sor_buffer_size=10M
- table_open_cache=2000
- # Remove leading
- # to turn on a very important data integrity option: logging
- # changes to the binary log between backups.
- #lob_bin
- log_bin=ON
- log_bin_basename=/var/lib/mysql/mysqld-bin
- #
- # Remove leading # to set options mainly useful for reporting servers.
- # The server defaults are faster for transactions and fast SELECTs.
- # Adjust sizes as needed, experiment to find the optimal values.
- join_buffer_size = 128M
- sort_buffer_size = 2M
- read_rnd_buffer_size = 2M
- datadir=/var/lib/mysql
- socket=/var/lib/mysql/mysql.sock
- character_set_server=utf8
- #init_connect=‘SET NAMES utf8‘
- # Disabling symbolic-links is recommended to prevent assorted security risks
- symbolic-links=0
- # Recommended in standard MySQL setup
- sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
- #general_log
- general_log=ON
- general_log_file=/var/lib/mysql/localhost.log
- #slow_query_log
- slow_query_log=ON
- slow_query_log_file=/var/lib/mysql/localhost-slow.log
- slow_launch_time=2
- [mysqld_safe]
- log-error=/var/log/mysqld.log
- pid-file=/var/run/mysqld/mysqld.pid
如果上述文件配置好后,执行mysql登录,抛出xxxx.line 这样的异常,就去/usr/share/mysql 下面复制一个.cnf文件的头部替换掉上述my.cnf的头部代码,前提是要copy一个到/etc下,命名my.cnf,再把上面的copy,版本信息和一些详细文件的
具体路径配置,和参数配置看你自己的安装情况
我替换的是/usr/share/mysql/my-default.cnf 头文件的这几句:
- # For advice on how to change settings please see
- # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
- # *** DO NOT EDIT THIS FILE. It‘s a template which will be copied to the
- # *** default location during install, and will be replaced if you
- # *** upgrade to a newer version of MySQL.
- [mysqld]
然后[mysqlld]以下的全部是copy上面的,从上面配置文件的第7行的#号开始,可以解决类似Fatal error in defaults handling. Program aborted 或者xxxx line xxxx 错误的问题,根据你服务器的具体情况具体分析,我的是以我配置的为基准的
配置完之后,mysql可以正常登录,查看和启动日志:
- mysql> show variables like ‘log_%‘;
- +----------------------------------------+------------------------------------+
- | Variable_name | Value |
- +----------------------------------------+------------------------------------+
- | log_bin | OFF |
- | log_bin_basename | |
- | log_bin_index | |
- | log_bin_trust_function_creators | OFF |
- | log_bin_use_v1_row_events | OFF |
- | log_error | /var/lib/mysql/AY140615022008Z.err |
- | log_output | FILE |
- | log_queries_not_using_indexes | OFF |
- | log_slave_updates | OFF |
- | log_throttle_queries_not_using_indexes | 0 |
- | log_warnings | 1 |
- +----------------------------------------+------------------------------------+
- 11 rows in set (0.01 sec)
- mysql> show variables like ‘log_bin‘;
- +---------------+-------+
- | Variable_name | Value |
- +---------------+-------+
- | log_bin | OFF |
- +---------------+-------+
- 1 row in set (0.00 sec)
- mysql> select version();
- +-----------+
- | version() |
- +-----------+
- | 5.6.10 |
- +-----------+
- 1 row in set (0.02 sec)
需要开启的可以自己设置,希望可以帮到大家,少走歪路!
Linux 下没有 my.cnf 文件的解决方式,完全是我自己整的,好多教程都是瞎扯的 (zhuan)