|
编译安装 MySQL 5.5.13
以前没安装过 费了好大力气
编译安装 MySQL 5.5.13
建立mysql安装目录及数据存放目录
# mkdir /usr/local/mysql
# mkdir /usr/local/mysql/data
# mkdir /usr/local/mysql/etc
创建用户和用户组
# groupadd mysql
# useradd -g mysql mysql
赋予数据存放目录权限
# chown mysql:mysql –R /usr/local/mysql/data
通过http://www.mysql.com/downloads/mysql官方网址或国内的sohu镜像下载软件包。
# wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.13.tar.gz
# tar zxvf mysql-5.5.13.tar.gz
# cd mysql-5.5.13
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/usr/local/mysql/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/usr/local/mysql/etc -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1
# make
# make install
# make
# make install
在make与make install的时候可以看到进度百分比,感觉这一点要比configure方式要好。
6.配置并初始化数据库
创建my.cnf配置文件
# mkdir /usr/local/mysql/log
# mkdir /usr/local/mysql/etc
# cp support-files/my-medium.cnf /usr/local/mysql/etc/my.cnf
修改my.cnf 添加如下内容:
socket = /tmp/mysqld.sock
datadir = /usr/local/mysql/data
初始化数据库
执行前需赋给scripts/mysql_install_db文件执行权限
# chmod 755 scripts/mysql_install_db
# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
创建管理MySQL数据库的shell脚本
# mkdir /usr/local/mysql/init.d
# cp support-files/mysql.server /usr/local/mysql/init.d/mysql
赋予shell脚本可执行权限:
# chmod +x /usr/local/mysql/init.d/mysql
启动MySQL:
# /usr/local/mysql/init.d/mysql start
通过命令行登录管理MySQL服务器(提示输入密码时直接回车):
# /usr/local/mysql/bin/mysql -u root -p -S /tmp/mysql.sock
or
# /usr/local/mysql/bin/mysql -u root -p
输入以下SQL语句,创建一个具有root权限的用户(admin)和密码(12345678):
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY '12345678';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'127.0.0.1' IDENTIFIED BY '12345678';
为root帐户设置初始密码
# /opt/mysql/bin/mysqladmin -u root password 'new-password'
删除本机匿名连接的空密码帐号
/usr/local/mysql/bin/mysql -uroot -p'new-password'
mysql>use mysql; //选择系统数据库mysql
mysql>select Host,User,Password from user; //查看所有用户
mysql>delete from user where password="";
mysql>flush privileges;
mysql>select Host,User,Password from user; //确认密码为空的用户是否已全部删除
mysql>exit;
|
|
|
|
|
|
|