在Linux上進行mySql安裝部署及遇到的問題的解決方法


前提:

Linux centOS虛擬機64位

 

1、首先確認是否已安裝過MySQL

方法一:刪除原有的MySQL目錄:

  使用查找語句:

    whereis mysql

    find / -name mysql

  刪除文件:

    rm -rf mysql文件名

方法二:卸載MySQL

  查找MySQL安裝包:

    rpm -qa|grep -i mysql

結果:可以看到mysql的兩個包mysql-4.1.12-3.RHEL4.1、mysqlclient10-3.23.58-4.RHEL4.1

      然后刪除:

    rpm -e --nodeps 包名

 

2、刪除老版本mysql的開發頭文件和庫

 

  檢查各個mysql文件夾是否刪除干凈

    find / -name mysql

  結果如下:

  /var/lib/mysql

  /usr/local/mysql

  /usr/lib/mysql

  /usr/include/mysql

 

  命令:

    rm -rf /usr/lib/mysql

    rm -rf /usr/include/mysql

 

3、刪除干凈MySQL后在線安裝MySQL

  在線安裝語句:

    yum install mysql mysql-server mysql-devel -y 

  

  yum install -y mysql-server mysql mysql-deve

 

4、查看MySQL版本以確認是否安裝成功

  查看mysql版本:

    rpm -qi mysql-server

 

5、啟動MySQL

    service mysqld start

 

6、如何修改MySQL的ROOT賬號的密碼?

  修改ROOT賬號密碼語句: 

    mysqladmin -u root password 'root' 

    UPDATE user SET Password=PASSWORD('11111111') where USER='root';

  Mysql新版本使用該語句:

    UPDATE user SET authentication_string=PASSWORD('11111111') where USER='root';

  出現報錯無法使用該密碼正常登錄:

  解決方法:

    1.停止mysql數據庫

    /etc/init.d/mysqld stop

    2.執行如下命令

    mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

    3.使用root登錄mysql數據庫

    mysql -u root mysql

    4.更新root密碼

    mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';

    最新版MySQL請采用如下SQL

    mysql> UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root';

    5.刷新權限 

    mysql> FLUSH PRIVILEGES;

    6.退出mysql

    mysql> quit

    7.重啟mysql

     /etc/init.d/mysqld restart

    8.使用root用戶重新登錄mysql

    mysql -uroot -p 

    Enter password: <輸入新設的密碼newpassword>

 

7、如何設置開啟啟動?

    chkconfig mysqld on

    查看linux現在在監聽的mysql端口

     netstat -anp| grep mysql

    默認3306

 

8、如何在/etc/my.cnf設置端口號?

  1、查看默認使用的端口號

  登錄mysql

    mysql -u root -p 

  使用命令show global variables like 'port';查看端口號

  2、修改端口,編輯/etc/my.cnf文件,早期版本有可能是my.conf文件名,增加端口參數,並且設定端口,注意該端口未被使用,保存退出。

增加port=3307這一行。

  3、 重新啟動mysql

     /etc/init.d/mysqld restart

  重啟失敗

  查看一下log

  cat /var/log/mysqld.log

  log報錯是防火牆問題導致啟動失敗。

  解決如下:

    1.  防火牆問題

    vi /etc/sysconfig/iptables

  添加如下行:

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 8060 -j ACCEPT

  2. SELinux問題

  方法一: 不需要重啟Linux:

  [root@dytl05 ~]# setenforce 0

 

9、ERROR 1130: Host 192.168.3.100 is not allowed to connect to this MySQL server錯誤如何解決?

  客戶端鏈接mysql報錯1130

1、 查看是否能ping通服務端所在服務器IP

不能ping通的話,可以思考一下是不是服務器所在的主機防火牆是不是沒關。

2、 查看服務端是否已設置可以從任意主機連到mysql服務器。

登錄mysql -u root -p

use mysql;

select Host, User from user;

update user set Host = '%' where User = 'root';

出現報錯不要理會

select Host, User from user;

localhost變成了%就成功了

這時輸入quit退出mysql.

然后重新啟動MySQL。再用Navicat進行連接就可以連接上了

 

10、MySQL的基本命令

 

啟動mysql: /etc/init.d/mysql start 
重啟mysql: /etc/init.d/mysql restart 
停止mysql: /etc/init.d/mysql stop

 

mysql的配置文件是/etc/my.cnf。

 

本文為個人總結得出參考如下資料,圖片均為本人個人所有,轉載請告知。

參考資料:

http://www.cnblogs.com/zhangkaimin/p/4171269.html

http://www.cnblogs.com/james-roger/p/6943616.html

http://blog.csdn.net/wobin/article/details/10266165.html

http://www.linuxidc.com/Linux/2013-09/90110.html

http://www.cnblogs.com/bravehunter/p/5653317.html

https://jingyan.baidu.com/article/2c8c281dbf19a10008252a11.html

http://blog.csdn.net/brad_chen/article/details/50038793

http://blog.chinaunix.net/uid-20450406-id-1676510.html

http://blog.csdn.net/zsf8701/article/details/7718904

http://www.cnblogs.com/kerrycode/p/4364465.html

http://www.cnblogs.com/david-zhang-index/archive/2012/03/01/2375500.html

http://7424593.blog.51cto.com/7414593/1752592/

http://www.cnblogs.com/fnlingnzb-learner/p/5830622.html

http://www.cnblogs.com/coder-zhang/p/3828378.html

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM