新手在linux下安装mysql

新手在linux下安装mysql

  • 把安装包整到Linux的目录下,我在官网上下载的,用XFTP传过去的
    • tar -zxvf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz
  • 添加系统mysql组和mysql用户:
    • 执行命令:groupadd mysql
    • useradd -r -g mysql mysql
  • 安装数据库:
    -yum install mysql-server 先把这个装上
    • 进入安装mysql软件目录:执行命令 cd /usr/local/mysql
    • 修改当前目录拥有者为mysql用户:执行命令 chown -R mysql:mysql ./
    • 安装数据库:执行命令 ./scripts/mysql_install_db –user=mysql
    • 修改当前目录拥有者为root用户:执行命令 chown -R root:root ./
    • 修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql data

以上部分是百度经验,那就service mysqld start试一下呗,然后坑就来了

出现第一个问题:

less /var/log/mysqld.log

报错信息:
    InnoDB: Error: log file ./ib_logfile0 is of different size 0 50331648 bytes
    InnoDB: than specified in the .cnf file 0 5242880 bytes!

报错原因是:

ib_logfile0 和 ib_logfile1这两个文件一定要和innodb_log_file_size的值一样,也不知道什么道理

解决方法:
    1.找到那两个文件
        find / -name "ib_logfile0"
        cd /var/lib/mysql/
        mv ib_logfile0 ib_logfile1_root_2016124
        mv ib_logfile1 ib_logfile1_root_2016124
    2.修改my.cnf文件
        innodb_log_file_size=32M

第二个问题:

报错信息
    Fatal error: Can't open and lock privilege tables: Table 
    'mysql.host' doesn't exist

报错原因:

由于编译安装时指定的路径为/opt/data以及mysql_install_db时指定的datadir也为/opt/data,而my.cnf为缺省的路径

1.修改my.cnf文件
        datadir = /var/lib/mysql
        socket = /var/lib/mysql/mysql.sock
        user=mysql
        old_passwords=1
2. 在运行初始化权限表的时候使用增加参数--datadir 
        /usr/bin/mysql_install_db --user=mysql --datadir=/opt/zhw/mysql20131204/mysql/usr/bin/mysql_install_db

到这里 service mysqld start 终于成功

  • 启动mysql服务和添加开机启动mysql服务:
    • 执行命令cp support-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机初始化目录
  • 修改mysql的root用户密码,root初始密码为空的:
    • ./bin/mysqladmin -u root password ‘密码’ 这里写我写1
  • 把mysql客户端放到默认路径:
    • ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

然后想进去耍耍

    mysql -uroot -p
    又报错:
        ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

网上找各种资料,好像是要改root密码,改一发:

    1.service mysqld restart #重启一发      
    2.mysql -u root mysql    #键入此命令进入mysql
    3.update user set password=password('123') where user='root' and host='localhost';  ---->修改root的密码
    4.flush privileges;
    5.\q

然后正常登陆

    mysql -u root -p           ------>重新进入
    Enter password:
    mysql> 

感动

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值