(1)安装编译源码需要的包
sudo apt-get install make cmake gcc g++ bison libncurses5-dev
2 解压mysql的gz包
3 tar -xvf .gz
编译配置:
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DCOMPILATION_COMMENT="lq-edition"-DENABLE_DTRACE=1 -DOPTIMIZER_TRACE=1 -DWITH_DEBUG=1
编译:
make
安装:
sudo make install
配置MySQL
(1)新建运行Mysql的用户和组
sudo groupadd mysql
sudo useradd -g mysql mysql
(2)设置Mysql安装目录的权限
cd /usr/local/mysql
sudo chown -R mysql:mysql ./
(3)建立配置文件
cp support-files/my-default.cnf /etc/my.cnf
sudo chown mysql:mysql /etc/my.cnf
源码包中拷贝errmsg.sys到这个目录,否则初始化数据库的时候会报错
cp /web/mysql-5.6.26/sql/share/english/errmsg.sys /usr/share/mysql/errmsg.sys
(4) vi /etc/my.cnf
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
[mysqld_safe]
socket = /usr/local/mysql/data/mysql.sock
nice = 0
[mysqld]
user = mysql
pid-file = /usr/local/mysql/data/mysqld.pid
socket = /usr/local/mysql/data/mysql.sock
port = 3306
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
myisam-recover = BACKUP
query_cache_limit = 1M
query_cache_size = 16M
log_error = /var/log/mysql/error.log
expire_logs_days = 10
max_binlog_size = 100M
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
#no-auto-rehash # faster start of mysql but no tab completition
[isamchk]
key_buffer = 16M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
(5)初始化数据库
cd /usr/local/mysql
sudo scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
(6)启动mysql服务
方法1:
直接启动
bin/mysqld_safe &
检查MySQL服务是否启动:
ps -ef |grep mysql
方法2:
通过服务启动
添加服务,复制启动脚本到/etc/init.d目录:
cd /usr/local/mysql/
cp support-files/mysql.server /etc/init.d/mysql
设置文本的权限:
sudo chmod 755 /etc/init.d/mysql
启动:
sudo /etc/init.d/mysql start
(关闭mysql服务:sudo /etc/init.d/mysql stop)
或者
sudo service mysql start
(关闭mysql服务:sudo service mysql stop)
检查MySQL服务是否启动:
ps -ef |grep mysql
(7)配置环境变量
为了直接调用mysql,需要将mysql的bin目录加入PATH环境变量。
编辑/etc/profile文件:
sudo vim /etc/profile
在文件最后 添加如下两行:
PATH=$PATH:/usr/local/mysql/bin
export PATH
关闭文件,运行下面的命令,让配置立即生效:
source /etc/profile
(8)修改root密码(因为默认密码为空)
mysql -h127.0.0.1 -uroot -p
update mysql.user set password=password("root") where user='root';
flush privileges;
参考: http://www.linuxdiyf.com/linux/14453.html