groupadd mysql #添加mysql组useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
mkdir -p /data/mysql #创建MySQL数据库存放目
chown -R mysql:mysql /data/mysql #设置MySQL数据库目录权限
mkdir -p /usr/local/mysql #创建MySQL安装目录
cd /opt
tar zxvf mysql-5.5.35.tar.gz
cd mysql-5.5.35cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DSYSCONFDIR=/etc -DINSTALL_SHAREDIR=share
make && make install待安装完以后开始配置MySQL:
cp ./support-files/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加下面一行
datadir = /data/mysql #添加MySQL数据库路径
:wq! #保存退出cd /usr/local/mysql
启动mysql的时候我希望将数据库的数据文件放在另外一个目录下面,启动命令修改为:注意:实例目录,,安装的时候在此出现了错误。
shell>/usr/local/mysql/bin/mysqld_safe --user=mysql --log-error=/u01/mysql/mysql_error/error --datadir=/data/mysql/
这个时候就出现问题了,
因为在进行初始化数据库权限表的那一步的时候默认创建的权限表在默认目录/usr/local/mysql/var下面,这就造成了,上面的错误无法找到权限表:Can‘t
open and lock privilege tables: Table ‘mysql.host‘ doesn‘t exist
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql #生成mysql系统数据库 注意:由于数据库需要保存在另一个目录 在运行初始化权限表的时候使用增加参数--datadir
cp ./support-files/mysql.server /etc/rc.d/init.d/mysql #把Mysql加入系统启动
chmod 755 /etc/init.d/mysql #增加执行权限
chkconfig mysql on #加入开机启动
vi /etc/rc.d/init.d/mysql #编辑
basedir = /usr/local/mysql #MySQL程序安装路径
datadir = /data/mysql #MySQl数据库存放目录
service mysqld start #启动
vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行
export PATH=$PATH:/usr/local/mysql/bin
:wq! #保存退出
下面这行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。ln -s /usr/local/mysql/include/mysql /usr/include/mysql
reboot #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作
mysql_secure_installation #设置Mysql密码
根据提示按Y 回车
然后输入2次密码
继续按Y 回车,直到设置完成
或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password "123456" #修改密码
service mysqld restart #重启
到此,mysql安装完成!
centos 6.5 32位 编译安装Mysql