1 mysql 5.5.11编译安装
1.1 安装所需要系统库相关库文件
gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*
1.2 创建mysql安装目录
[root@localhost mysql-5.5.11]# mkdir -p /usr/local /mysql/
1.3 创建数据存放目录
[root@localhost mysql-5.5.11]# mkdir -p /data/mysql/
1.4 创建用户和用户组与赋予数据存放目录权限
[root@localhost mysql-5.5.11]# groupadd mysql
[root@localhost mysql-5.5.11]# useradd -g mysql mysql
[root@localhost mysql-5.5.11]# chown mysql.mysql -R /data/mysql/
1.5 安装cmake
(mysql5.5以后是通过cmake来编译的)
下载解压cmake-2.8.4.tar.gz
[root@localhost mysql-5.5.11]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
//文件在//192.168.10.250 /cgroup/soft/mysql
[root@localhost mysql-5.5.11]# tar zxvf cmake-2.8.4.tar.gz
[root@localhost mysql-5.5.11]# cd cmake-2.8.4
[root@localhost mysql-5.5.11]#./configure
[root@localhost mysql-5.5.11]# make && make install
1.6 安装mysql 5.5.11
[root@localhost mysql-5.5.11]#wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.11.tar.gz
//文件在//192.168.10.250 /cgroup/soft/mysql
[root@localhost down]# tar zxvf mysql-5.5.11.tar.gz
[root@localhost down]# cd mysql-5.5.11
1.7 编译mysql-5.5.11
[root@localhost mysql-5.5.11]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-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
上面的命令一次拷进命令行。
[root@host mysql-5.5.11]# make
[root@host mysql-5.5.11]# make install
1.8 复制配置文件
[root@mysql-5.5.11]# cp support-files/my-medium.cnf /etc/my.cnf
1.9 初始化数据库
(执行前 需要chmod 755 scripts/mysql_install_db 赋给文件执行权限)
[root@localhost mysql-5.5.11]#scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/
注:#basedir mysql安装路径 datadir 数据库文件储存路径
1.10 设置mysqld的开机启动:
[root@mysql-5.5.11]# cp support-files/mysql.server /etc/init.d/mysql
[root@mysql-5.5.11]# chmod 755 /etc/init.d/mysql
chkconfig mysql on
1.11 配置环境
为了方便,将mysql 的bin目录加到PATH中,在/etc/profile中加入myslq/bin,顺便增加两个别名方便操作:
export PATH=/usr/local/mysql/bin:$PATH
开关客户端
alias mysql_start="mysqld_safe&"
alias mysql_stop="mysqladmin -uroot -p shutdown"
1.12 启动mysql服务
[root@localhost mysql-5.5.11]# /etc/init.d/mysql start //服务器端开关
启动完成之后用ps -ef |grep mysql 命令查看是否启动
[root@localhost mysql-5.5.11]#/mysql –u root –p //client开关参照1.11一文
2 标准的mysql安装设置
2.1 设置root帐户的密码
[root@localhost mysql-5.5.11]#mysqladmin -u root password ‘yourpassword‘
2.2 删除本机匿名连接的空密码帐号
本机登录mysql
[root@localhost mysql-5.5.11]#mysql –u root -p
然后输入上面设置的密码,登录后在mysql的命令行中执行:
mysql>use mysql; //选择默认数据库mysql
mysql>update user set password=’root’ where user = ‘127.0.0.1‘;
mysql>delete from user where password="";//不允许root密码为空
mysql>flush privileges;
mysql>quit
容许root用户是远程登录
对于root账号,如果考虑安全应该新建其他账号用于远程登录,root账号可以不必开启远程登录。不过对于一般使用,没有太多安全需求,允许root用户远程登录可以方便管理,毕竟使用专用管理软件的图形界面在操作方面要方便的多。
3 实现MySQL远程连接的实际操作流程
3.1 mysql 数据库端设置
[root@localhost mysql-5.5.11]#/mysql –u root –p //进入数据库
mysql>use mysql
mysql>select user,password,host from user;
mysql>update user set host = ‘192.168.%‘ where user = ‘127.0.0.1‘;
mysql>grant all privileges on *.* to root@‘%‘ identified by "root";//给以root@ip登录的远程连接赋予权限,能够连接数据库。远程无法连接的常见问题原因。
并把远程登录用户的密码设置为root
mysql> flush privileges;
mysql>quit