安装mysql多次,终于安装好了一次,惊喜不已呀!
一:卸载旧版本
使用下面的命令检查是否安装有MySQL Serverrpm -qa | grep mysql
有的话通过下面的命令来卸载掉
rpm -e mysql //普通删除模式 rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
二:安装MySQL
安装编译代码需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
下载MySQL 5.6.14
wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz
编译安装 ------安装在/home/lyy/tool/mysql下
-DCMAKE_INSTALL_PREFIX=/home/lyy/tool/mysql \
-DMYSQL_DATADIR=/home/lyy/tool/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/home/lyy/tool/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install编译的参数可以参考 http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html。
三:配置MySQL
(1)设置目录权限
使用下面的命令查看是否有mysql用户及用户组
cat /etc/passwd 查看用户列表 cat /etc/group 查看用户组列表
如果没有就创建
groupadd lyy useradd -g lyy lyy修改/home/lyy/tool/mysql权限
sql_mode =NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
port = 3306
socket =/home/lyy/tool/mysql/mysql.sock
basedir =/home/lyy/tool/mysql
datadir =/home/lyy/tool/mysql/data
pid-file =/home/lyy/tool/mysql/mysql.pid
log-error =/home/lyy/tool/mysql/mysql.err.log
user =lyy
server-id =1
skip-name-resolve
(3)创建系统数据库的表:
(4)设置环境变量:
vim ~/.bash_profile
export PATH=$HOME/tool/mysql/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$HOME/tool/mysql/lib:$LD_LIBRARY_PATH
执行
source /root/.bash_profile
----- 使用环境变量生效
5)手动启动mysql:
./bin/mysqld_safe --user=mysql ----- 启动MySQL,但不能停止
关闭MySQL服务
mysqladmin -u root -p shutdown ----- 这里MySQL的root用户还没有配置密码,所以为空值需要输入密码时,直接点回车键即可。
(6)另一种简单的启动mysql的方法(mysql已经被添加到系统服务中):
service mysql.server start
service mysql.server stop
service mysql.server restart
如果上述命令出现:mysql.server 未识别的服务
则可能mysql还没添加到系统服务中,下面用另一种方法添加:
cp support-files/mysql.server /etc/init.d/mysql ------ 将mysql的启动服务添加到系统服务中
注意:主要是将mysql.server拷贝到/etc/init.d中,命名为mysql。在有的系统中,mysql.server在/home/lyy/tool/mysql/share/mysql/mysql.server中,而本系统中,mysql.server在/home/lyy/tool/mysql/support-files/mysql.server中。
然后再用#service mysql start 来启动mysql即可。
或者
/etc/init.d/mysql start
/etc/init.d/mysql stop
/etc/init.d/mysql restart
(7)修改MySQL的root用户的密码以及打开远程连接:
[root@zhanglin~]# mysql -u root mysql
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO <a href="mailto:root@" %"="" data-ke-src="mailto:root@" style="word-wrap: break-word; text-decoration: none; color: rgb(142, 3, 0);">root@"%" IDENTIFIED BY "xxxxxx"; ----- 为root添加远程连接的能力。
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
若还不能进行远程连接,则关闭防火墙
[root@zhanglin~]# /etc/rc.d/init.d/iptables stop