由于現(xiàn)在要用mysql,以前一直用oracle ,現(xiàn)在下個mysql都要翻墻下載,官方網(wǎng)站都下不了,選擇之后都是windows版本。 最后找了個外國網(wǎng)站:http:///linux/misc/mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz/ 下載了最新版本的:mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz
查看當前centos版本和內(nèi)核,位數(shù)。 [root@localhost ~]# cat /etc/redhat-release?。?etc/redhat-release配置文件用一行內(nèi)容來聲明 Red Hat 的名稱和版本號。 由 rc.local 使用.
一、把mysql壓縮包上傳到/usr/mysql 目錄下面。安裝目錄選擇/usr/local/mysql。 然后在網(wǎng)上找一篇安裝mysql的文章,最后參考了http://blog.csdn.net/zhanngle/article/details/41042631 -------------------------------------------
1.解壓tar包
cd /software
tar -xzvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz -- 更改對應的包名mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.21-linux-glibc2.5-x86_64 mysql-5.6.21 --更改對應的安裝目錄/usr/local/mysql
2.添加用戶與組
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql mysql-5.6.21
3.安裝數(shù)據(jù)庫
su mysql
cd mysql-5.6.21/scripts
./mysql_install_db --user=mysql --basedir=/software/mysql-5.6.21 --datadir=/software/mysql-5.6.21/data
(新的:./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data)
exit
這里可能會報錯:scripts/mysql_install_db: /usr/bin/perl: bad interpreter: No such file or directory。
需要安裝perl以及perl-devel.執(zhí)行命令:yum –y install perl perl-devel
4.配置文件
cd /software/mysql-5.6.21/support-files
cp my-default.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysql
vim /etc/init.d/mysql #若mysql的安裝目錄是/usr/local/mysql,則可省略此步
修改文件中的兩個變更值
basedir=/software/mysql-5.6.21
datadir=/software/mysql-5.6.21/data
5.配置環(huán)境變量
vim /etc/profile
export MYSQL_HOME="/software/mysql-5.6.21"
export PATH="$PATH:$MYSQL_HOME/bin"
保存退出
. /etc/profile
6.添加自啟動服務
chkconfig --add mysql
chkconfig mysql on
7.啟動mysql
service mysql start
8.登錄mysql及改密碼與配置遠程訪問
mysqladmin -u root password 'your_password' #修改root用戶密碼,如果有問題mysqladmin:
connect to server at 'localhost' failed -- http://blog.csdn.net/zl17/article/details/8589454
mysql -u root -p #登錄mysql,需要輸入密碼
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION; #允許root用戶遠程訪問
mysql>FLUSH PRIVILEGES; #刷新權(quán)限
mysql>exit
---------------------------2014/11/25 添加
又裝了一次此版本的mysql,發(fā)現(xiàn)root用戶不能登錄,提示沒權(quán)限。使用mysqld_safe 登進去,發(fā)現(xiàn)user表居然是空的,沒有一個用戶,郁悶。
于是從其它地方導出了一份user表的sql語句,手動插入了一個用戶,再登錄就可以了。
附:
忘記root密碼后,如何找回密碼
cd $MYSQL_HOME
./bin/mysqld_safe --basedir=/data/mysql-5.6.21 --datadir=/data/mysql-5.6.21/data --skip-grant-tables &
mysql -u root mysql UPDATE user SET password=PASSWORD("new_password") WHERE user='root'; FLUSH PRIVILEGES; 二、按上面的文章安裝完之后 1、查詢當前安裝的mysql版本 [root@localhost ~]# mysql -V
進入mysql、查看mysql版本
2、Mysql啟動、停止、重啟常用命令
2、使用 mysqld 腳本啟動:
3、使用 safe_mysqld 啟動:
b、停止
2、使用 mysqld 腳本啟動: 3、mysqladmin shutdown
c、重啟
2、使用 mysqld 腳本啟動:
三、賦予權(quán)限 (1)、創(chuàng)建用戶: create user 'myuser'@'localhost' IDENTIFIED by '123456';
flush privileges; (2)、創(chuàng)建數(shù)據(jù)庫: create database mydb;
flush privileges; (3)、給用戶授權(quán)數(shù)據(jù)庫相關(guān)權(quán)限 grant all privileges on mydb.* to myuser@localhost identified by '123456'; flush privileges;
我用到的權(quán)限命令,簡單說明,mydb為數(shù)據(jù)庫實例名,myuser為用戶名,后面對某個ip作對應的權(quán)限控制。
1、grant all on mydb.*
to 'myuser'@'192.168.1.6';
查看用戶權(quán)限 具體參考:http://www.cnblogs.com/llsun/archive/2013/08/06/3240963.html 四、導入數(shù)據(jù)問題解決
ERROR 2006 (HY000): MySQL server has gone away
1.執(zhí)行批量的MYSQL語句,例如備份恢復的時候,時間過長; 或者SQL語句過大或者語句中含有BLOB類似字段--我的是BLOB字段存放文件導致過大引起 重啟后查詢
mysql> show variables like '%timeout';
mysql> show VARIABLES like '%max_allowed_packet%'; 五、安裝完之后訪問參考
http://blog.csdn.net/cuker919/article/details/44997923
六、啟動應用 啟動應用訪問發(fā)現(xiàn)應用日志連接池報:java.sql.SQLException: Access denied for user 'myuser'@'localhost' (using password: YES) 同時切換到linux,用該用戶試試:
[root@localhost ]# mysql -u myuser-p 但發(fā)現(xiàn)mysql workbench用該用戶訪問一切正常,因為我是用mysql workbench創(chuàng)建的用戶,但到linux又登錄不了。 下面是試錯的過程,但既然后面可以登錄了 (1)、修改密碼
[root@localhost ]# mysql -u root -p 發(fā)現(xiàn)用這個命令修改密碼提示:ERROR 1146 (42S02): Table 'mydb.user' doesn't exist 參考:http://www.cnblogs.com/fly1988happy/archive/2011/12/15/2288554.html
update mysql.user set password=password('新密碼') where User="test" and Host="localhost"; -- 最后這樣更改才ok (2)、再登錄,還是報錯
[root@localhost logs]# mysql -u myuser-p (3)、再試錯。
[root@localhost ]# /etc/init.d/mysql stop ?。V狗?/span>
[root@localhost ]# mysql -u myuser-p -- 再登錄,既然可以了,然后應用也可以登錄 (4)、總結(jié) 先登錄 mysql
# mysql -u root -p
mysql> use mysql
--切換
mysql> select
host,user,Password from user; --查看用戶和密碼情況,其實從這里就可以發(fā)現(xiàn)問題,不行就往下
# /etc/init.d/mysql stop
參考:http://www./zh-cn/2567.html
|
|