Linux系統下安裝mysql

來源:互聯網
上載者:User

標籤:技術   exp   設定   ora   com   select   沒有   sed   from   

一、下載

這裡我建立了一目錄software用於存放我們待會要下載的mysql包,先去到該目錄

命令:cd /software
命令:wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar

下載完成後,你會在software這個目錄下看到多出了空色框的檔案

 

二、建立使用者,以及mysql的目錄
1、groupadd mysql #建立一個mysql的組
2、useradd -r -g mysql mysql #建立mysql使用者,並且把使用者放到mysql組
3、passwd mysql #給mysql使用者佈建一個密碼

 

三、解壓mysql
1、把tar包移動到/usr/local 目錄下
mv /software/mysql-5.7.17-linux-glibc2.5-x86_64.tar /usr/local
2、解壓
cd /usr/local

tar xvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz


tar zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz


【多出目錄 mysql-5.7.17-linux-glibc2.5-x86_64】
注意:沒有data 目錄,my.ini 在support-files 目錄

3、改一下目錄名字為/usr/local/mysql (linux下mysql的預設安裝安裝目錄)

mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql

 

四、配置相關的啟動設定檔
1、複製my-default.cnf 到 /etc/my.cnf (mysqld啟動時自動讀取)
cp my-default.cnf /etc/my.cnf

2、複製mysql.server 到/etc/init.d/ 目錄下【目的想實現mysqld -install這樣開機自動執行效果】
【/etc/init.d/ 目錄,等效於註冊表HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services 記錄有那些服務】
cp mysql.server /etc/init.d/mysql (mysql是服務名)

3、修改 /etc/init.d/mysql 參數
vi /etc/init.d/mysql
給與2個目錄位置
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data


4、給目錄/usr/local/mysql 更改擁有者
chown -R mysql:mysql /usr/local/mysql/


5、解決一下亂碼問題
vi /etc/my.cnf

[mysql]
default-character-set=utf8

[mysqld]
default-storage-engine=INNODB
character_set_server=utf8

 

五、初始化 mysql 的資料庫
mysql_install_db (老版本的做法)
新版本:
1.初始化
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

產生出一個data目錄,代表資料庫已經初始化成功
並且mysql的root使用者產生一個臨時密碼:5!uipdk>qmg?

2.給資料庫加密
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

3.啟動mysql

bin/mysqld_safe --user=mysql &


【檢查ps -ef|grep mysql】

 

六、進入用戶端
1.登入 ./mysql -uroot -p

 

如果報錯資訊為:

解決方案:刪除了 /tmp/mysql.sock.lock檔案

命令:rm -f  /tmp/mysql.sock.lock


2.修改密碼
set password=password(‘123456‘);

 


七、遠端存取 (即你用Windows系統能訪問Linux系統的mysql)

我們先看看資料結構:

現在我們的Windows系統是無法訪問到虛擬機器下的Linux系統的mysql的,因為沒有許可權

1、授權
grant all privileges on *.* to [email protected]‘%‘ identified by ‘123456‘;
select host,user from user; 【多出1條遠程登入使用者記錄】
flush privileges;

現在用Windows系統訪問我Linux系統的mysql,你會發現依然是不能訪問,那是因為防火牆沒有關

命令:mysql -h(你Linux系統的ip地址)-uroot -p123456

2、關閉防火牆或者給防火牆開放連接埠
systemctl stop firewalld.service

成功訪問後的如下:

 

八、設定開機自動啟動

1、添加服務mysql
chkconfig --add mysql 【mysqld -install】
2、設定mysql服務為自動
chkconfig mysql on


3、重啟檢查
init 6
ps -ef|grep mysql

 

九、設定path
vi /etc/profile
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH

Linux系統下安裝mysql

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.