ubuntu上又装了一遍mysql,重新写一遍
下载mysql源码包,mysql-5.5.21.tar.gz
下载时注意别选成其他的linux安装包,不然编译肯定报错。选择平台的下拉列表里选择 Source Code,Select Platform: Source Code ,下载 Generic Linux (Architecture Independent), Compressed TAR Archive
以下是过程
groupadd mysql //增加用户组
useradd -g mysql mysql -s /usr/sbin/nologin
mkdir /mysql //mysql数据目录
mkdir /usr/local/mysql //安装目录
tar -zxvf mysql-5.5.21.tar.gz
cd mysql-5.5.21
//cmake编译代码 未安装cmake 可以用以下命令 sudo apt-get install cmake,在/usr/bin里能看到cmake,或者下载cmake源码包 cmake-2.8.7.tar.gz,解压后进入解压目录运行./configure make && make install就搞定
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1
(//以上参数分别为安装目录、数据目录、字符集、扩展的字符集、MYISAM/INNODB存储、是否允许执行本地load data infile,附参数说明
)
make
make install
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /mysql
安装完后,复制配置文件,启动前初始化
cp suport-files/xxx.cnf my.cnf (mysql配置文件,可以选择my-medium.cnf)
./script/mysql_install_db --defaults-file=/usr/local/mysql/my.cnf --user=mysql --datadir=/mysql
//defaults-file表示指定默认的配置文件,如果不指定,系统默认的优先级是依次使用/etc/my.cnf,/etc/mysql/my.cnf,mysql安装目录下my.cnf作为mysql的配置文件,那之前make的那些参数就白设置了。。。
//如果不指定 可以通过cp my.cnf /etc/my.cnf 将etc目录下得配置文件覆盖
启动mysql
方法一:
sudo bin/mysqld_safe --user=mysql &
方法二
cp suport-files/mysql.server /etc/init.d/mysql
sudo /etc/init.d/mysql start