linux 下安装mysql

安装版本:mysql-5.5.13.tar.gz

1、安装 cmake 编译器。

1)、下载cmake

#cd /usr/local/src

#wget http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz

2)、解压cmake

#tar -zvxf cmake-2.8.3.tar.gz

3)、配置编译

#cd cmake-2.8.3
#yum -y install gcc
#yum -y install gcc-c++
#./configure
#make
#make install

 

2、安装MySQL

1)、下载MySQL。

#cd /usr/local/src

#wget http://mirrors.ircam.fr/pub/mysql/Downloads/MySQL-5.5/mysql-5.5.13.tar.gz

2)、添加必要的组和拥有者

#groupadd mysql

#useradd -r -g mysql mysql

3)、解压MySQL

#tar -zvxf mysql-5.5.13.tar.gz

4)、配置编译

#mkdir /usr/local/mysql

#mkdir /usr/local/mysql/data

#cd /usr/local/src/mysql-5.5.13

#cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DINSTALL_DATADIR=/usr/local/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1

参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql        //安装目录
-DINSTALL_DATADIR=/usr/local/mysql/data         //数据库存放目录
-DDEFAULT_CHARSET=utf8                        //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci            //校验字符
-DEXTRA_CHARSETS=all                            //安装所有扩展字符集
-DENABLED_LOCAL_INFILE=1                        //允许从本地导入数据

#make

#make install

注意事项:

重新编译时,需要清除旧的对象文件和缓存信息。

# make clean
# rm -f  CMakeCache.txt

##########################回家接着做下面的#####################
4)、设置目录权限

# cd /usr/local/mysql

# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

# chown -R mysql:mysql data
 

5)、配置文件

# cp support-files/my-medium.cnf /etc/my.cnf //这个配置仅适合小内存系统(32M - 64M)

#scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

//初始化系统表,这一步很重要

cp support-files/mysql.server  /etc/init.d/mysqld 

#chmod +x /etc/init.d/mysqld   //赋予该文件执行权限
#/etc/init.d/mysqld start    //启动mysql
#mysqladmin -u root password '123456'


打开如下注释:

innodb_data_home_dir = /usr/local/mysql/data
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/data

innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M

innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

添加默认字符集:

[client]
default-character-set = utf8    // 添加编码支持
[mysqld]
default-character-set = utf8   // 添加编码支持
max_connections = 10000     //根据服务器性能调节
basedir = /usr/local/mysql //设置安装目录,这样在系统启动时才能正确运行到/etc/rc.d/init.d/mysql start

 

7)、设置权限启动

设置环境变量:

# vim /etc/profile

文件最后添加如下内容:

export PATH=$PATH:/usr/local/mysql/bin

启动方法:
方法1:

手动启动MySQL:

# cd /usr/local/mysql

# ./bin/mysqld_safe --user=mysql &   //启动MySQL,但不能停止

启动日志写在此文件下:/usr/local/mysql/data/localhost.err

关闭MySQL服务

# mysqladmin -u root -p shutdown  //这里MySQL的root用户还没有配置密码,所以为空值。

方法2:
通过脚本启动MySQL:

# ln -s /usr/local/mysql/support-files/mysql.server /usr/local/mysql
//必须注意,是放在mysql目录下,不是bin目录下
# cp /usr/local/mysql/support-files/mysql.server /usr/local/mysql  
# mysql.server start //启动mysql
# mysql.server stop //停止mysql

方法3:
在引导时启动MySQL :

# ln -s /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql

# ln -s /usr/local/mysql/mysql.server /etc/rc.d/init.d/mysql
# cd /etc/rc.d/init.d
# chkconfig --add mysql       //配置是否自动启动, chkconfig --del mysql 可删除
# chmod +x /etc/rc.d/init.d/mysql    //添加如执行权限

 

Tips
Linux运行级别:分成了8种运行级别,其中常用7种。可在/etc/inittab文件中设置。
0 - halt1 - Single user mode2 - Multiuser, without NFS3 - Full multiuser mode4 - unused5 - x116 - reboot默认设置为:id:3:initdefault:每一种动行级别都有自已独立的文件夹,例如:/etc/rc.d/rc3.d 表示运行级别为3的配置都存放在这个文件侠中。# chkconfig --list |grep mysql      //检查看是否设置为自启动mysql           0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭表示: 运行级别2、3、4、5都会自动启动mysql另一种手动配置自已启动:

可能会出现这种情况,如果你试图在/etc/rc.d/rc3.d目录下运行../init.d/mysql start可能会收到如下错误

Starting MySQLCouldn't find MySQL server (./bin/mysqld_safe[失败]

可见mysql.server内部引用了一个相对路径./bin/mysqld_safe,所以这样就导致失败。

这样我们可以直接在rc.local文件中添加启动脚本:

# chkconfig --del mysql

# cd /etc/rc.d

# vi rc.local //添加: /usr/local/mysql/bin/mysqld_safe --user=mysql &

解决办法:在/etc/my.cnf 配置文件中添加:


basedir = /usr/local/mysql

 

8)、修改MySQL的root用户的密码:

# mysql -u root mysql

mysql>use mysql;
mysql>desc user;
mysql>update user set Password = password('xxxxxx') where User='root';
mysql>select Host,User,Password  from user where User='root';
mysql>flush privileges;
mysql>exit

重新登录:mysql -u root -p

 

9)、添加软链接

# ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
# ln -s /usr/local/mysql/include/mysql /usr/include/mysql

 

 

注意事项:

<1>、MySQL5.5 默认使用InnoDB作为存储引擎,所以可以不设置DWITH_MYISAM_STORAGE_ENGINE值

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14661773/viewspace-732703/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/14661773/viewspace-732703/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值