使用make命令编译时,会比较吃CUP。博主当时购买的阿里主机是单核1G内存,编译到55%左右时直接卡住,同时无法新建一个终端连接,内存或者CPU已经严重耗尽。在重新购买了一个物理数据盘并划分出一个swap交换空间后,最终还是编译成功了,耗时约4个小时。所以,如果主机内存在1G一下并且没有设置Linux交换空间的,不建议直接编译MySQL5.7.7rc![root@linuxidc mysql-5.7.7-rc]# make && make install下图展示的是make命令执行完毕的情况:编译MySQL5.7.7rc对CPU和内存消耗比较大,这里截取了两张使用top命令的图片:最后,激动人心的时刻,看到下图就代表已经编译安装好了MySQL5.7.7rc!
在完成上面的操作后,就可以正式使用MySQL服务了。启动MySQL进程服务的命令如下:[root@linuxidc mysql]# mysqld_safe --user=mysql --datadir=/mydata/mysql/data --log-error=/var/log/mysql/error.log &[直接回车][1] 10274150513 21:28:16 mysqld_safe Logging to "/var/log/mysql/error.log".150513 21:28:16 mysqld_safe Starting mysqld daemon with databases from /mydata/mysql/data######上面这条命令会在后台继续执行,所以直接回车并执行下面这条命令[root@linuxidc mysql]# service mysqld startStarting MySQL.[OK] [启动成功][root@linuxidc mysql]# 然后使用下面这命令ps -ef | grep mysql和netstat -tunpl | grep 3306查看MySQL服务进程和端口监听情况:
12 初始化MySQL数据库的root用户密码
和Oracle数据库一样,MySQL数据库也默认自带了一个root用户(这个和当前Linux主机上的root用户是完全不搭边的),我们在设置好MySQL数据库的安全配置后初始化root用户的密码。配置过程中,一路输入y就行了。这里只说明下MySQL5.7.7rc版本中,用户密码策略分成低级LOW、中等MEDIUM和超强STRONG三种,推荐使用中等MEDIUM级别![root@linuxidc mysql]# mysql_secure_installation............省略前面的过程............Press y|Y for Yes, any other key for No: y 【需要修改密码,所以输入y】There are three levels of password validation policy:LOWLength >= 8 【只需要长度大于或等于8】MEDIUM Length >= 8, numeric, mixed case, and special characters 【还需要包含数字、大小写和类似于@#%等特殊字符】STRONG Length >= 8, numeric, mixed case, special characters and dictionaryfile【还需要包含字典文件】............省略剩下的过程............
13 将MySQL数据库的动态链接库共享至系统链接库
一般MySQL数据库还会被类似于PHP等服务调用,所以我们需要将MySQL编译后的lib库文件添加至当前Linux主机链接库/etc/ld.so.conf.d/下,这样MySQL服务就可以被其它服务调用了。[root@linuxidc lib]# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf[root@linuxidc lib]# ldconfig[使生效][root@linuxidc lib]# ldconfig -v |grep mysql [查看效果]ldconfig: Can"t stat /libx32: No such file or directoryldconfig: Path `/usr/lib" given more than onceldconfig: Path `/usr/lib64" given more than onceldconfig: Can"t stat /usr/libx32: No such file or directory/usr/lib64/mysql:libmysqlclient.so.18 -> libmysqlclient.so.18.0.0/usr/local/mysql/lib:libmysqlclient.so.20 -> libmysqlclient_r.so.20.0.0
14 创建其它MySQL数据库用户
使用MySQL数据库root管理员用户登录MySQL数据库后,可以管理数据库和其他用户了。这里演示创建一个名为linuxidc的MySQL用户(密码为@linuxidc2014.com)和一个名为linuxidc的数据库。[root@linuxidc mysql]# mysql -uroot -p密码######登录成功后,创建linuxidc数据库,并设置字符集和字符校mysql> CREATE DATABASE `linuxidc` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;Query OK, 1 row affected (0.00 sec)######创建名为linuxidc用户,并让它拥有linuxidc数据库所有的权限mysql> grant all privileges on linuxidc.* to typecodes@localhost identified by "@linuxidc2014.com";Query OK, 0 rows affected, 1 warning (0.01 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql> exit;[创建完毕,root用户退出]