Mysql安装与配置总结

Mysql安装与配置总结:

对于Mysql数据库相关信息,这里不做介绍总结,有需要的同学可查阅相关的资料。另外,本篇总结文章主题在于Mysql的安装、配置及服务操作。

 

·     安装

·     配置

·     操作

·     问题

 

一、安装

不同的系统的安装方法略有不同,这里是安装在Mac OSX下,所以可以使用homebrew来安装,对于Linux下安装方法,请参看:

 http://www.cnblogs.com/quanzhiguo/p/7520651.html

 

$ brew install mysql

 

NOTE:

在线下载安装,好处就是安装的软件比较新,不好的地方就是网络慢时,下载较慢。

 

二、配置

1、my.cnf文件

为了避免Mysql版本升级后,覆盖my.cnf文件,建议将该文件位置移动到/etc/下,默认位置为/usr/local/Cellar/mysql/5.7.11/my.cnf,操作如下:

$ sudo mv /usr/local/Cellar/mysql/5.7.11/my.cnf /etc/

 

2、my.cnf配置

下面为my.cnf配置文件的优化后的配置,具体如下:

[mysqld]

port = 3306

server_id = 1

character-set-server = utf8

default-storage-engine = INNODB

socket = /tmp/mysql.sock

skip-external-locking

 

key_buffer = 16K

query_cache_limit = 256K

query_cache_size = 4M

max_allowed_packet = 1M

table_open_cache = 128   # 表缓存的数目,一般是 max_connections 的倍数

 

max_connections = 32

thread_concurrency = 2

 

sort_buffer_size = 64K

read_buffer_size = 256K

read_rnd_buffer_size = 256K

net_buffer_length = 2K

thread_stack = 64K

 

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 

[mysqldump]

quick

max_allowed_packet = 16M

 

[mysql]

no-auto-rehash

default-character-set = utf8

 

[isamchk]

key_buffer = 8M

sort_buffer_size = 8M

 

[myisamchk]

key_buffer = 8M

sort_buffer_size = 8M

 

[mysqlhotcopy]

interactive-timeout

 

三、操作

对于Mysql的服务操作,主要就是[start|stop|restart]了,为了简化操作,我们修改下/etc/profile文件,加入下面内容:

alias mysqlstart="/usr/local/opt/mysql/bin/mysql.server start"

alias mysqlstop="/usr/local/opt/mysql/bin/mysql.server stop"

alias mysqlrestart="/usr/local/opt/mysql/bin/mysql.serverrestart"

 

$ source /etc/profile #使profile立即生效,那么直接可以:

 

$ mysqlstart      // 开始服务

$ mysqlstop       // 停止服务

$ mysqlrestart    // 重启服务

 

具体如下:

 

 

 

四、问题

1、启动Mysql服务报错

遇到问题:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket'/tmp/mysql.sock' (2)

 

问题产生:

由于多次重复安装mysql(最新安装的是mysql 5.7)是mysql系统出现问题。

Mysql 5.7相比之前版本,做了些调整,所以最好解决办法就是备份原有数据库数据,重新初始化一个新实例即可。

 

解决办法:

$mysqld --defaults-file=/etc/my.cnf --user=mysql --datadir=/var/mysql/data--initialize --initialize-insecure

 

NOTE:

Mysql 5.7后,需要使用mysqld来初始化,而5.6及以前,则使用mysql_install_db;

--defaults-file,指定我们使用的my.cnf全局配置文件;

--datadir,指定数据安装的目录,需要保证data目录为空,并有写入权限;

--initialize-insecure,如果加上这个指令,会创建一个空密码的root@localhost账号,否则生成非空密码的root@localhost账号,而且密码保存在日志文件中(在5.6版本中是放在 ~/.mysql_secret 文件里);

 

PS:

由于产生上面错误的原因有很多,例如:

A、配置文件my.cnf配置出错

B、my.cnf出现多个,产生覆盖问题

具体的问题,也请查看错误日志分析跟踪即可。

 

2、待更新…

 

 

posted @ 2017-09-14 14:50  QuanZhiGuo的博客  阅读(556)  评论(1编辑  收藏  举报