mysql ヘルプ!
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
02/01/22 16:08ID:kMbsTQE3状況を詳しく書きます
PHPが動くプロバイダーのディレクトリにおいた自分の家の
mysqlサーバを操作するPHPに
$db = mysql_connect("mysqlサーバのip:3306","ゆーざ","ぱす");
と書いたのですが、駄目でした。
どうすればいいのでしょうか?
0002名無しさん@お腹いっぱい。
02/01/22 16:10ID:???0003名無しさん@お腹いっぱい。
02/01/22 16:15ID:kMbsTQE3Warning: MySQL Connection Failed: Can't connect to MySQL server on '場所'
エラーじゃないんですが はっきりつなげないと出てしまって・・
0004名無しさん@お腹いっぱい。
02/01/22 16:21ID:???他の手段でそのリモートにあるmysqlサーバを使うのはできるの?
0005名無しさん@お腹いっぱい。
02/01/22 16:23ID:???0006名無しさん@お腹いっぱい。
02/01/22 16:24ID:???00074
02/01/22 16:25ID:???0008名無しさん@お腹いっぱい。
02/01/22 16:26ID:kMbsTQE3もちろんローカルにおいたPHPからは操作できます。
でもそのMYSQLサーバーのローカルIPアドレスを
PHPのmysql_connect関数にかいて、外のプロバイダーに
おいても接続できないと出てしまいます。ポートは
デフォルトでは3306ですよね・・ どうすればいいん
でしょうか。
0009名無しさん@お腹いっぱい。
02/01/22 16:30ID:???0011名無しさん@お腹いっぱい。
02/01/22 16:33ID:kMbsTQE3家のポートというのは、要するにMYSQLを起動しているという
事ですか?
アクセス制限はROOTでアクセスしてDBに入ろうと思ってるので、
大丈夫だと思いますが・・・
0012名無しさん@お腹いっぱい。
02/01/22 16:53ID:???まず>>1の接続している環境を考えてみよう。
ずっと接続されていると仮定して。
なんで外から中に接続できないのか。
やっぱり考えていただこうではないか。
めんどうかもしれないがネット接続関係の専門書をお勧めする。
00134
02/01/22 16:57ID:???違う。
0014名無しさん@お腹いっぱい。
02/01/22 16:58ID:kMbsTQE3あのmysql_connect関数の引数のIPはMYSQLのenvironmentの
LOCALIPADRRESSというところの194.22.〜.〜でいいんですよね。
後、逆にどうやったら、プロバイダーにおいたPHPから
家のDBを操作できるようにできるんでしょうか?
0015名無しさん@お腹いっぱい。
02/01/22 17:04ID:???0016名無しさん@お腹いっぱい。
02/01/22 17:05ID:kMbsTQE3よいのですか?
00174
02/01/22 17:09ID:???0018名無しさん@お腹いっぱい。
02/01/22 17:16ID:kMbsTQE3プロバイダーのサーバはおそらくリナックスだと思います
もちろんMYSQLはconfigでwith-mysqlでついてました。
00194
02/01/22 17:24ID:???ttp://www.byakuya-shobo.co.jp/hj21/vol4/jyouji.html
0020名無しさん@お腹いっぱい。
02/01/22 17:29ID:kMbsTQE3思ったんですが、そうは問屋がおろさないみたいですね。
まだまだハードルがありそうだ・・・
0021名無しさん@お腹いっぱい。
02/01/22 17:44ID:???0022名無しさん@お腹いっぱい。
02/01/22 17:46ID:???00234
02/01/22 17:48ID:???頑張れ。
0024名無しさん@お腹いっぱい。
02/01/22 18:03ID:kMbsTQE3サーバー構築の本でしょうか?
プロバイダーのサーバはいじれないから、家のサーバーっていうか
PCか。それとmysqlサーバーの設定かな。
00254
02/01/22 18:16ID:???ttp://www.oreilly.co.jp/BOOK/wnt2ksec/
とかかなぁ。よぅ知らんのよ。Windowsは付属のヘルプも充実してると思うが。
あと、知識用にTCP/IP接続の本かWebページ。
0026名無しさん@お腹いっぱい。
02/01/22 18:32ID:kMbsTQE3ローカルならPHPにmysql_connect(localhost,root)で簡単に
操作できたんですけど ネットワークにサーバか・・
00274
02/01/22 18:43ID:???0028名無しさん@お腹いっぱい。
02/01/22 18:57ID:???0029名無しさん@お腹いっぱい。
02/01/22 22:02ID:???0030名無しさん@お腹いっぱい。
02/01/22 22:31ID:???0031名無しさん@お腹いっぱい。
02/01/23 00:11ID:???1・MySQLの該当ユーザーのアクセス権限がどうなっているか。
外からアクセスできるように設定されているのか
2・ローカル(家)のルータ|FWはport 3306をmysqlサーバーに通すようになっているか。
3・リモートのサーバーから外部のport 3306に接続することはできるのか。
エラーメッセージからは>>5-6のいうとおり 2,3っぽいね。
3を確認するためには >>4のいうとおり、他のmysqlサーバーにあたってみよう。
2を確認するためには外部から telnet TARGETHOST 3306してみよう。
0032MySQL
02/02/13 19:40ID:???いました。周りに質問できる人もいないし、どなたか私を助けてくれませんか?
やりたいこと 下のような権限を持つユーザーを作る
1.テーブルは自由に作成、削除できる
2.他人の作ったテーブルは見れない、消せない
3.データベースの作成、削除はできない
こんな感じで意図は伝わりましたか?もう頼るところが無いんです...、
よろしくお願いします。
0033しょしんしゃ
02/02/14 11:05ID:???1.グローバルな権限は全部Nにしてユーザを追加(3.に対応)
2.データベースをつくって、テーブルをつくりたいユーザーに
CREATEをGRANTする。(1に対応)
3.テーブルを作るときに、テーブルをつくったユーザーに
すべてをGRANT。それ以外には権限をあたえない。(2に対応)
って感じじゃない?たぶん。
0034しょしんしゃ
02/02/14 11:07ID:???1=グローバルの権限
2=データベースの権限
3=テーブルの権限です。
003532
02/02/14 23:57ID:???しょしんしゃさん、お返事ありがとうございます。
> 3.テーブルを作るときに、テーブルをつくったユーザーに
> すべてをGRANT。それ以外には権限をあたえない。(2に対応)
この作業はテーブル作成時に管理者さんがしないとダメですよね?
ユーザー自身が自由にテーブル作成・削除はできるけど、他人の作った
テーブルには一切アクセスできない、というようなことができればなぁ、
と思ってたのです。やっぱり無理なのかな?ふぅ。
となると、ユーザー毎にデータベースを作るのが現実的なのかな?
0036nobodyさん
02/07/05 13:21ID:sTJoXJtl分散データベースの研究をしております。
同じテーブル定義のテーブルを分散しているのですが、
その分散したテーブルを一つのテーブルにしたいのですが、
なにか方法はありませんか?
0037nobodyさん
02/07/05 22:13ID:???マルチ
回答不要
http://pc.2ch.net/test/read.cgi/php/983250751/228
0038nobodyさん
02/07/08 18:54ID:lARTVJ7d接続できません。
コマンドプロンプトの画面で、
「net start mysql」と入力しても、
途中でエラー:1067が発生し、
中断します。
コントロールパネルの「サービス」からも
同様の結果になります。
なぜでしょうか?
0039クラさん
02/07/24 12:45ID:tjNyt0k2WinMySQLadminからサーバーのコントロールは出来ますが
VariablesやProcess、Database、Reportなどの情報が
WinMySQLadminでは取得できません。
その他、DOS窓やクライアントプログラムから接続は出来て
特に支障ないです。再インストールしてみたりもしたのですが
状況が変わりません。わかる方いらっしゃるでしょうか?
0040nobodyさん
02/08/23 00:39ID:rUynFkaj何がちがうの?
0041nobodyさん
02/08/23 15:44ID:BcNB4bejMaxと付く方はトランザクションをサポートしている
0042nobodyさん
02/09/02 00:40ID:dngEI4Feスタンドアロンならうまく逝くんでない?
それと深いdirに置いてない?
c:\mysql なんかに置いてみれ!
0043nobodyさん
02/09/03 08:03ID:fHvwXYydtinyint=1byte
smallint=2byteと思っていたのですが、
show tableすると、Typeに
tinyint(3)
と表示されます。これは3バイトってことですよね?
1バイトの大きさのカラムを作るにはどうすればいいのですか?
0044PhpMyAdmin
02/09/16 10:51ID:???巡回ソフトなんかで集中的なアクセス食らってもサービス落ちしないような
設定を考えてみたんですが、こうでいいでしょうか?
[client]
#password=my_password
#port=xxxx
port=3306
#socket=MySQL
[mysqld]
port=3306
#socket=MySQL
skip-locking
#default-character-set=sjis
set-variable = key_buffer=64M
set-variable = max_allowed_packet=4M
set-variable = thread_stack=512K
set-variable = flush_time=1800
set-variable = table_cache=256
set-variable = sort_buffer=1M
set-variable = record_buffer=1M
#set-variable = long_query_time=1
basedir = D:/MYSQL/
datadir = D:/MYSQL/DATA/
<<本文が長かったり改行が多いと板に怒られるから次のレスへ続く>>
0045PhpMyAdmin
02/09/16 10:53ID:???#innodb_data_file_path = ibdata1:200M
#innodb_data_home_dir = C:\ibdata
#set-variable = innodb_mirrored_log_groups=1
#innodb_log_group_home_dir = C:\iblogs
#set-variable = innodb_log_files_in_group=3
#set-variable = innodb_log_file_size=30M
#set-variable = innodb_log_buffer_size=8M
#innodb_flush_log_at_trx_commit=1
#innodb_log_arch_dir = C:\iblogs
#innodb_log_archive=0
#set-variable = innodb_buffer_pool_size=80M
#set-variable=lower_case_table_names =0
#set-variable = innodb_additional_mem_pool_size=10M
#set-variable = innodb_file_io_threads=4
#set-variable = innodb_lock_wait_timeout=50
<<本文が長かったり改行が多いと板に怒られるから次のレスへ続く>>
0046PhpMyAdmin
02/09/16 10:54ID:???language=D:/MYSQL/SHARE/JAPANESE
tmpdir=D:/DOCUMENTS AND SETTINGS/ADMINISTRATOR/LOCAL SETTINGS/TEMP
[mysqldump]
quick
set-variable = max_allowed_packet=16M
#default-character-set=EUC-JP
[mysql]
no-auto-rehash
#default-character-set=EUC-JP
[isamchk]
set-variable= key=16M
[client_fltk]
help_file= D:\MYSQL\SQL_CLIENT\MYSQL.HELP
client_file= D:\MYSQL\MYSQL.OPTIONS
history_length=20
database = test
queries_root= D:\MYSQL\QUERIES
last_database_file= D:\MYSQL\LASTDB
[WinMySQLAdmin]
Server=D:/MYSQL/BIN/MYSQLD-MAX-NT.EXE
user=ないしょ
password=ひみつ
自信がないので、「これならほぼ大丈夫だぜ!」っていう設定があれば
教えてください。おながいします。
00471日1善保守生活創刊号
02/09/16 18:14ID:???0048nobodyさん
02/09/17 02:37ID:p6Xmi4dv>tinyint(3)
それは文字数とおもわれ。
0049nobodyさん
02/10/07 21:53ID:m57T57IBアクセスする場合どうしたらいいのでしょうか。
0050nobodyさん
02/10/13 02:41ID:NZn49T9iredhat7.3にrpmでmysqlインストールして
mysql -u root
set password for root=('設定するパスワード');
flush privileges;
で最後のとこで
ERROR 1045 Access denied for user: '@localhost' (Using password: NO)
ってでてつまってます。
なんか他のユーザー作成とかなにかやろうとするとすぐ同じエラーがでてきちゃう
んですけど、だれかたすけて〜
0051nobodyさん
02/10/14 18:48ID:???あるデータベース内の全てのテーブルにしたいのですが、
どのように SQL を書けばよいのでしょうか?
0053nobodyさん
02/10/19 15:58ID:???で聞いた方がいいかもね。
ドライバ開発者もいるみたいだし。
0054nobodyさん
02/11/02 05:56ID:???0055nobodyさん
03/01/01 02:13ID:g22yKLaX0056nobodyさん
03/01/01 19:19ID:pXgJfOxPperl scripからmysqlに読み込ませてきましたが,
新しいMySQLのバイナリー配布版で,"LOAD
DATA INFILE"が利用できなくて,困っており
ます。
ttp://www.mysql.com/doc/en/LOAD_DATA_LOCAL.html
これまでは,perl scriptから一度に複数のテキストファイルをmysqlに読み込ませました。
foreach ("load data infile 'list.txt' into table list", "load data infile 'lemmafe.txt' into table lemmafe"){
$out2 = $dbh->prepare("$_");
$out2->execute;
}
現在は,この作業をterminalから
mysql -u hogehoe -p --local-infile=1
とmysql clientを立ち上げて,手作業でtext
データを読み込ませています。
sourceファイルからmysqlをコンパイルすれば,
問題は解決できるようですが,コンパイルには
自信がありません。
local-infile=1でコンパイルしたosx用のバイナリ
ーファイルを配布しているサイトはありません
でしょうか?
0057nobodyさん
03/01/01 19:38ID:g22yKLaXftp://mirror.mcs.anl.gov/pub/mysql/Downloads/MySQL-3.23/
ftp://mirror.mcs.anl.gov/pub/mysql/Downloads/MySQL-Max-3.23/
ftp://mirror.mcs.anl.gov/pub/mysql/Downloads/MySQL-4.0/
ftp://mirror.mcs.anl.gov/pub/mysql/Downloads/MySQL-Max-4.0/
0058nobodyさん
03/01/01 19:42ID:g22yKLaXもしphpMyAdminでCSVファイルのアップロード等を行う必要がある場合、
「--with-local-infile」オプションをつけるか、
mysqlコマンドで「--local-infile=1」というオプションをつけて実行することで有効になる。
0059nobodyさん
03/01/01 19:45ID:g22yKLaXhttp://www.mysql.gr.jp/jpdoc/4.0/manual.ja_MySQL_Database_Administration.html#LOAD_DATA_LOCAL
0060ID:g22yKLaX@59
03/01/01 19:47ID:g22yKLaX006156
03/01/01 21:52ID:pXgJfOxP>つけて実行することで有効になる。
mysqlサーバを立ち上げるときに,--local-infile=1を次のように
入れても,無効でした(osx)
/Volumes/mysql/mysqlNew/bin/safe_mysqld --user=mysql --local-infile=1 &
mysqlのソースをコンパイルするときに,local-infile=1を指定しないと,
サーバーでは有効にならないのでしょうか?
0062nobodyさん
03/01/06 00:49ID:YMUOqc9Y2つのレコードを入れ替えたいのですが
例)
num,site__,url
_10,2ch___,http://2ch.net/
_22,Google,http://google.com/
↓
num,site__,url
_10,Google,http://google.com/
_22,2ch___,http://2ch.net/
こんなことできますか?
それとも手作業的にupdateしないとダメ?
0063山崎渉
03/01/15 13:36ID:???0064nobodyさん
03/02/28 17:53ID:XIiZ4aB7このデータベース「hoge」にはMySQLのユーザ「root」でしかアクセス出来ないようにするにはどうしたら良いでしょうか。
逆に、「foo」と言うユーザーは「boo」と言うデータベースにしか接続できない様にするにはどうすれば良いのでしょうか。
よろしくお願いします。
0065nobodyさん
03/03/11 13:25ID:pS3CSiOrかねやんMySQLAdminってソフト使ってみたらどうでしょう。
質問させて下さい。
$sth->fetchall_arrayref();で
NAMEやTYPEを取得したいのですがどうすればいいですか?
$sth->fetchrow_array();なら
$names=$sth->{'NAME'}とすれば
$names->[0]で取得できますが、
2回もfetchするのは、効率悪い気がします。
お願いします。
0066nobodyさん
03/03/12 04:14ID:txYiwVgf0067nobodyさん
03/03/12 11:46ID:???MySQLの質問というよりはDBIモジュールの質問ではないかな。
$sth->execute;
$name = $sth->{NAME};
$type = $sth->{TYPE};
$data = $sth->fetchall_arrayref;
これで漏れは全部のデータが取得できるんだが。
0068nobodyさん
03/03/12 12:18ID:myMG93+Uありがとうございました。
たしかにDBIモジュールの質問ですね。
ORACLEだとfetchall_arrayrefでも
$sth->{NAME}->[0]とかすれば
最初のNAMEを取得できたのに
MYSQLではエラーになったので
ここに質問してしまいました。
以後気を付けます。
0069nobodyさん
03/03/12 23:17ID:PTQ2BK4j0070山崎渉
03/03/13 16:58ID:???0071nobodyさん
03/03/25 16:25ID:BGwX64RNけど読み方がわからないのでおしえてください。
0072nobodyさん
03/03/27 03:03ID:Ya09dI5Iスクリプトはありますか?
0073nobodyさん
03/03/27 12:10ID:???0074山崎渉
03/04/17 12:11ID:???0075山崎渉
03/04/20 06:22ID:???( ^^ )< ぬるぽ(^^)
0076nobodyさん
03/05/17 17:45ID:ghc51a2p0077nobodyさん
03/05/17 17:55ID:/0gIo8DK0078nobodyさん
03/05/18 16:45ID:NH4N97DjUnicodeはあくまでも文字のコードであって、
通信の方式やツールのことじゃないから、質問意味不明ナリ
データベースの文字型の扱いをUTF-8にしたいってんなら、
MySQL4あたりだと出来るはずだよ。
0079nobodyさん
03/05/18 16:46ID:aNJYcTmWバナー紹介料として、リンクスタッフ登録の度に1000円の報酬。
掲示板などに宣伝すればクリックや紹介がある度に報酬が得られます。
登録はメールアドレスと任意のパスワードを入力すれば完了です。
メールアドレスはフリーメールでもOK!
今なら登録するだけで1000円プレゼント。
ちなみに私の先月分の収入は、1日30分ぐらいの宣伝で138340円でした。
http://accessplus.jp/staff/in.cgi?id=9140
直リンクできないのでアドレスをコピーして貼り付けてジャンプしてください。
0080動画直リン
03/05/18 17:08ID:rGbr42DC0081nobodyさん
03/05/19 17:16ID:O90Qa4tTYYYYMMDDHHMMSSのように区切り文字なしでDBに格納されてしまいます。
DATETIME型のようにYYYY-MM-DD HH:MM:SS のフォーマットで
DBに格納されるようにしたいんですが可能でしょうか?
0082梨
03/05/20 23:52ID:Y6HkOJuAマニュアルにズバリ書いてあったよ。頭使ってもわかりそう。
ヒント: 4バイト
で、DATE_FORMATじゃだめなん?
0083nobodyさん
03/05/21 01:20ID:???テキストファイル使った方が効率良いんでしょうか。
最近は楽さを選んでみんなDB使っちゃってるんですが、
無駄にサーバーに負担かけてるかな?
0084梨
03/05/21 16:21ID:AbGSjTDt何をするかによるんでないかい?
「データ数」の定義も微妙だし。
行数が200程度しかないフラットな掲示板のログファイル1つのために
DB使うのはやりすぎって気もするけど、
書き込みが多いからロックファイル作って云々考えるとどっこいかも。
漏れは基本的にMySQLかな。
いろんなサーバに入れる場合は、ファイルで管理する事が多い。
0085山崎渉
03/05/22 01:57ID:???008681
03/05/22 11:01ID:rjjMwkskレスありがとうございます。
確かにマニュアルにフォーマットを指定できるようなことは書いてあるのは
読んだのですが、具体的にどのような書式で指定すればいいのかがわかりません。
4バイトだとYYMMという形式になってしまうのではないんでしょうか?
DATE_FORMATも読みましたが、私がやりたいのはCREATE TABLEで作成する際に
TIMESTAMPで何か書式が指定できるのかな、と思いまして。。。
0087bloom
03/05/22 11:08ID:x2YZ4VCE0088梨
03/05/22 13:51ID:meYOXQTHごめん。TIMEか何かと勘違いしていたので訂正します。
MySQLの日付型は次のフォーマットを持ちます。
a. 格納フォーマット
b. 表示フォーマット
c. (指定用の)共通フォーマット
結論から言うと、TIMESTAMPは、
aが4バイトのUNIX秒型、bがYYYYMMDDHHMMSSの桁数指定型、
cはDATEやDATETIMEと共通のフォーマットになっています。
bで指定出来るのは桁数だけなので、
表示フォーマットを指定するにはcで調整するしか無いです。
それが嫌ならば、DATETIME型を手作業で更新するという手もあります。
詳しくは「6.2.2.2 DATETIME, DATE, TIMESTAMP 型」に全部書いてあります。
http://www.mysql.gr.jp/jpdoc/3.23.x/manual.ja_Reference.html
008981
03/05/22 15:50ID:rjjMwkskなるほど。やはりbの表示フォーマットは変えられないんですね。
リファレンスのその部分は何度か読んだのですが、
表現的によくわからなかったので、ここで質問しました。
これでスッキリしました。DATETIME型でやってみます。
ありがとうございました。
0090nobodyさん
03/05/22 22:23ID:jBpXLiPHSQL> create a_table ( desc varchar(64) );
ERROR 1064: You have an error in your SQL syntax
near 'a_table (desc varchar(64) )' at line 1
どうしたらいいっすか?
009290
03/05/22 22:41ID:jBpXLiPHdescもdescrもdescriもdescribもdescirbeも使えない。
009390
03/05/22 22:47ID:jBpXLiPHごめん、まちがい
mysql> create table a_table (desc varchar(64) );
>>92
descとdescribeがカラム名として使えない
0094nobodyさん
03/05/22 22:49ID:???テーブルやフィールド名として使用できないれす
009790
03/05/23 09:40ID:???mysql> create table a_table ( `desc` varchar(64) );
Query OK, 0 rows affected (0.00 sec)
mysql> desc a_table;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| desc | varchar(64) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
1 row in set (0.00 sec)
すげー、できたよ!
めっちゃ多謝です >96
0098nobodyさん
03/05/23 09:53ID:5VJPohZk次のようなテーブルがあります。
mysql> select * from sample;
+----+-------+
| id | count |
+----+-------+
| 1 | 100 |
| 2 | 100 |
+----+-------+
ここで
mysql> update sample set count=count+10 where id=1;
とすると
mysql> select * from sample;
+----+-------+
| id | count |
+----+-------+
| 1 | 110 | ← 10増えている
| 2 | 100 |
+----+-------+
のようになります。
このupdate文は、アトミックなんでしょうか?
つまり、多人数で同時に実行しても必ず意図した
結果が保証されるんでしょうか?
0099nobodyさん
03/05/24 15:41ID:???http://www.mysql.gr.jp/jpdoc/4.0/manual.ja_Reference.html#LOCK_TABLES
http://www.mysql.com/doc/en/LOCK_TABLES.html
日本語訳だけじゃなくて元の英文にもあたって欲しいんだが、
例(単一のupdate)だとlock不要(即ち保証される)
むしろ弊害と折れは読んだが、どうか?
http://www.mysql.com/doc/en/Tips.html
"very fast!"ってどんだけ速いんだよぅ?
0100nobodyさん
03/05/24 15:42ID:+sQLJUip0101nobodyさん
03/05/24 16:38ID:oDSDORJVhttp://yahooo.s2.x-beat.com/linkvp/linkvp.html
■ このスレッドは過去ログ倉庫に格納されています