mysql 安装
下载源文件:
登录官网:www.mysql.com
Downloads -> Community -> MySQL Community Server -> Select Platform:(Source Code) -> Generic Linux (Architecture Independent), Compressed TAR Archive
或者:网址:wget http:
//dev.mysql.com/downloads/mysql/5.5.html#downloads
安装必备工具:
(mysql5.5以后的源码安装有了一些小变化,编译源码的时候不再使用configure,换成了cmake)
sudo apt-get update
sudo apt-get install cmake libncurses5-dev bison g++
添加组和用户及安装目录权限:
- sudo groupadd mysql #添加组
- sudo useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统(或:
shell> useradd -r -g mysql mysql // -r option means mysql is only a system account and can't login as a regular user shell> id mysql uid=497(mysql) gid=502(mysql) 组=502(mysql)
) - sudo mkdir -p /usr/local/mysql #创建MySQL安装目录
- sudo mkdir -p /usr/local/mysql/data #创建MySQL安装目录
- sudo chown -R mysql:mysql /usr/local/mysql/data #设置MySQL数据库目录权限
- (sudo apt-get install libboost-dev)更多详细见:http://www.xitongzhijia.net/xtjc/20150407/44268.html
安装
解压mysql源码包。我是把源码包下载到/home/用户名/download/ 下面,解压也是解压到相同目录下。
tar zxvf mysql-
5.5
.
35
.tar.gz 如果要解压到指定目录,在后面要加上 “-C 路径”。
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DINSTALL_DATADIR=/usr/local/mysql/data
-DMYS
QL_UNIX_ADDR=/usr/local/mysql/mysqld.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_gene
ral_ci
-DEXTRA_CHARSETS=all
-DENABLED_LOCAL_INFILE=
1
我把安装路径放在了/usr/local/mysql,也就是默认的路径,
data放在/usr/local/mysql/data/下,
sock文件放到/usr/local/mysql/mysqld.sock
一些参数如下:根据需要选择吧。
CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql
DEFAULT_CHARSET:指定服务器默认字符集,默认latin1
DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci ,校验字符
ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF
WITH_COMMENT:指定编译备注信息
WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。
WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎
SYSCONFDIR:初始化参数文件目录
MYSQL_DATADIR:数据文件目录
MYSQL_TCP_PORT:服务端口号,默认3306
MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock
如安装失败重新编译时,需要清除旧的对象文件和缓存信息。
shell> make clean
shell> rm -f CMakeCache.txt
shell> rm -rf /etc/my.cnf
- sudo cp ./support-files/my-default.cnf /etc/my.cnf
- sudo cp ./support-files/mysql.server /etc/init.d/mysqld #把Mysql加入系统启动
- sudo chmod 755 /etc/init.d/mysqld
- sudo chkconfig mysqld on
- sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
- sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
- sudo /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --skip-name-resolve --user=mysql
- sudo vi /etc/my.cnf
- #增加默认存储类型和去掉反向解析
- default-storage-engine=MyISAM
- skip-name-resolve
http://yanue.net/post-111.html
http://my.oschina.net/u/1019341/blog/186433
http://blog.itpub.net/29733787/viewspace-1222310/
Xtrabackup快速备份MySQL
http://lizhenliang.blog.51cto.com/7876557/1612800
http://blog.csdn.net/yongsheng0550/article/details/6682162
http://rfyiamcool.blog.51cto.com/1030776/1016636
http://rfyiamcool.blog.51cto.com/1030776/1022102
设置编码:
在Windows上,安装时请选择UTF-8
编码,以便正确地处理中文。
在Mac或Linux上,需要编辑MySQL的配置文件,把数据库默认的编码全部改为UTF-8。MySQL的配置文件默认存放在/etc/my.cnf
或者/etc/mysql/my.cnf
:
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
重启MySQL后,可以通过MySQL的客户端命令行检查编码:
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor...
...
mysql> show variables like '%char%';
+--------------------------+--------------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.1.65-osx10.6-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)
看到utf8
字样就表示编码设置正确。