linux下安装mysql【实践版】

来源:互联网 发布:java多线程代码 编辑:程序博客网 时间:2024/06/07 01:48

【环境及文件版本】

red hat  linux   v6.2

mysql linux  x86-x64  v5.6

【准备需要的文件】

首先去官网下载mysqllinux版本,可以针对安装的操作系统选择合适的版本。

然后将文件解压到一个目录,例如 /usr/local/中,并重命名为mysql确保最终所有的文件在/usr/local/mysql/这个目录中,使用命令行时,也需要定位到此目录,后续的操作都是在这个目录中完成的

 

【初始化数据库文件】

然后拷贝support-files/my-default.cnf 当前目录,并命名为my.cnf,并修改其中内容如下:

[mysqld]

skip-name-resolve   #跳过表扫描,可以加快mysql的执行树的

lower_case_table_names=1 #表名全部使用小写

datadir=/usr/local/mysql/data/     #设定数据文件存放位置

socket=/usr/local/mysql/mysql.sock    

user=mysql

character-set-server=utf8 #设定server的字符集,防止中文乱码

# Disabling symbolic-links isrecommended to prevent assorted security risks

symbolic-links=0

 

[mysqld_safe]

log-error=/usr/local/mysql/log/mysqld.log #注意,这里要手动创建一下log目录

pid-file=/usr/local/mysql/mysqld.pid

 

然后执行数据库初始化脚本文件:

./scripts/mysql_install_db --defaults-file=my.cnf   #后面的参数表示使用上一步定义的my.cnf来初始化数据库。

 

等待若干秒后,可以查看 data目录查增加了 mysql目录以及其他文件。此时mysql自身已经初始化完成了,不过现在mysql还不是服务的形式,不能使用service xxx start 的方式启动。但可以使用./bin/mysqld_safe &的方式启动

注:手动启动mysql的命令:./bin/mysqld_safe &  #至于为什么使用mysqld_safe,自己可以查下原因。

        手动停止mysql的命令:./bin/mysqladmin –h127.0.0.1 shutdown  #注意,尽量不要使用localhost,因为有时由于系统的原因,使用localhost会提示无法连接mysql

        手动停止mysql的第二种命令:pkill mysql #杀死所有名称中包含mysql的进程,干净利落 :-D

其他linuxmysql实用命令我后边会附带些。

【注册mysql为系统服务】

如果希望mysql以服务的方式启动,或者设置mysql开机启动,还需要如下步骤。

support-files中的mysql.server 拷贝到 /etc/rc.d/init.d/ 下,并重名为mysql (如果你不嫌mysql.server这个名字比较长的话,可以不重命名:-D文件名就是服务的名字)。

这是就可以使用service mysql start来启动mysql了(如果在上一步中你不小心手动启动了mysql,这一步会提示mysql已经启动)。

当然,相应的其他命令还有 service mysql  stop/restart/status 

【设置mysql开机启动】

此时mysql已经注册为服务了,如需开机启动,再需要两步操作。

首先将mysql加入开机启动列表:

chkconfig --add mysql

然后设置它开机启动:

chkconfig mysql on

这样mysql就会开机启动了。

如果需要关闭开机启动,可以:

chkconfig mysql off

查看mysql是否开机启动:

chkconfig --list mysql

查看mysql侦听是否在侦听端口(默认为3306):

netstat -lt | grep mysql

mysql用户名、远程登录设置】

上面时如何安装及启动mysqlmysql在初次安装后,还需要设置用户名、密码、及远程登录等。

mysql默认情况下,只有root用户,且密码为空,不允许本机以为其他机器登录。如需设置给root设置一个密码,且允许其远程登录,需要这样操作。

 

首先在mysql安装的机器登录mysql

mysql -uroot -h127.0.0.1

然后执行如下命令:

grant  all  privilegeson  *.* to root@’%’ identified  by ‘12345678’;

如果不需要设置密码,后面的identified by  ‘12345678’ 可以省略。

这样,就可以在使用navicat等工具远程连接mysql,进一步执行其他操作了。

1 0