centos6.8安装mysql5.6(tar.gz)
-
安装之前首先查看是否有libaio依赖包
yum search libaio
yum install libaio
-
直接在官网下载mysql
downloads-community-community server-looking for previous GA version 选择你想要的版本
-
将mysql安装包解压到指定目录
tar -zxvf ~/下载/mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz -C /usr/local
进入mysql安装目录
cd /usr/local
改名
mv ./mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz mysql
-
为centos添加mysql用户名和用户组
这步如果不是root用户会提示没有权限
切换到root用户
su
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
-
修改当前目录拥有者为mysql用户
cd mysql
chown -R mysql:mysql ./
-
初始化mysql数据文件
./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
这里有两个OK 的提示就表示成功了
提示 you may edit the file to changeserver settings 按回车就行
从上文说明中可以指导mysql的默认配置文件已经变到了mysql/my.cnf
my.cnf这个文件是数据库启动的时候会读取它,它里面可以设置一些mysql的相关配置(端口号和字符编码等)
-
配置并启动mysql数据库
cp support-files/mysql.server /etc/init.d/mysqld #<==拷贝mysql启动脚本到mysql的命令路径。
chmod 700 /etc/init.d/mysqld #<==使脚本可执行。
ls -l /etc/init.d/mysqld
会提示root root 10929 Feb 26 18:26 /etc/init.d/mysqld
启动mysql
cd ~ 回到用户目录
/etc/init.d/mysqld start 提示StartingMysql。SUCCESS! 表示成功
如果这里提示ging to ‘/usr/local/mysql/data/hadoop.err’. hadoop是我的本机名
你可以查看服务运行日志 tail /usr/local/mysql/data/hadoop.err
2018-10-05 11:10:27 3498 [Note] InnoDB: Waiting for purge to start
2018-10-05 11:10:27 3498 [Note] InnoDB: 5.6.41 started; log sequence number 1625997
2018-10-05 11:10:27 3498 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 3565e599-c84c-11e8-b7a1-000c29cb50f3.
2018-10-05 11:10:27 3498 [Note] Server hostname (bind-address): ‘*’; port: 3306
2018-10-05 11:10:27 3498 [Note] IPv6 is available.
2018-10-05 11:10:27 3498 [Note] - ‘::’ resolves to ‘::’;
2018-10-05 11:10:27 3498 [Note] Server socket created on IP: ‘::’.
2018-10-05 11:10:27 3498 [Note] Event Scheduler: Loaded 0 events
2018-10-05 11:10:27 3498 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: ‘5.6.41’ socket: ‘/tmp/mysql.sock’ port: 3306 MySQL Community Server (GPL)这里表示我的3306端口没有启动
那么可以编辑my.cnf文件
vim /usr/local/mysql/my.cnf
#These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
#server_id = …
#socket = … -
检查mysql是否启动
service mysqld status
-
设置开机 启动
chkconfig --add mysqld
-
将mysql命令加入全局变量
echo ‘export PATH=/usr/local/mysql/bin:$PATH’>>/etc/profile
tail -1 /etc/profile
输出export PATH=/usr/local/mysql/bin:$PATH
使配置生效
source /etc/profile
查看echo $PATH
-
登录
直接:mysql
ERROR1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
解决办法:重新初始化数据库即可,此问题一般都是数据库初始化问题,或者数据库文件损坏,以及目录权限问题。
-
这里直接用mysql登录可能会没有创建数据库的权限。
用select user();查看当前登录的用户 -
给用户授权
grant all on . to 用户名@本机名 identified by ‘用户密码’;将所有数据库的所有表所有权限赋给用户。
注意这个代码中的“.”周围有两个* Markdown格式显示不出来